:root {
	--nch-bg: #f6f7f9;
	--nch-surface: #ffffff;
	--nch-ink: #1d2430;
	--nch-muted: #697386;
	--nch-line: #d9dee7;
	--nch-blue: #175cd3;
	--nch-green: #16803c;
	--nch-yellow: #9a6700;
	--nch-shadow: 0 16px 40px rgba(29, 36, 48, 0.08);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* {
	box-sizing: border-box;
}

[hidden] {
	display: none !important;
}

.nch-dialog {
	width: min(620px, calc(100vw - 32px));
	max-height: calc(100vh - 48px);
	padding: 24px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: var(--nch-surface);
	box-shadow: 0 24px 64px rgba(29, 36, 48, 0.22);
}

.nch-dialog::backdrop {
	background: rgba(16, 24, 40, 0.42);
}

.nch-production-dialog {
	width: min(760px, calc(100vw - 32px));
	max-height: calc(100dvh - 32px);
	padding: 0;
	overflow: hidden;
}

.nch-production-completion-form {
	max-height: calc(100dvh - 32px);
	padding: 24px;
	overflow-y: auto;
}

.nch-production-dialog .nch-section-heading {
	align-items: center;
}

.nch-production-dialog .nch-help-text {
	max-width: 600px;
}

.nch-production-quantities {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nch-completion-material-lines {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.nch-production-cost-line {
	min-width: 0;
	grid-template-columns: minmax(120px, 0.8fr) minmax(180px, 1.2fr) minmax(110px, 0.55fr) 42px;
}

.nch-production-dialog .nch-submit-bar {
	margin-top: 4px;
}

.nch-factory-queue-table {
	min-width: 1080px;
}

.nch-factory-queue-table td {
	vertical-align: top;
}

.nch-factory-queue-table td > strong,
.nch-factory-queue-table td > small {
	display: block;
	overflow-wrap: anywhere;
}

.nch-factory-queue-table td > small {
	margin-top: 5px;
	color: var(--nch-muted);
	font-size: 11px;
	line-height: 1.4;
}

.nch-factory-queue-actions {
	flex-wrap: wrap;
}

.nch-finance-modal.nch-work-order-detail-modal {
	width: min(940px, calc(100vw - 32px));
}

.nch-work-order-detail-modal .nch-finance-modal-form {
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
}

.nch-work-order-detail-modal .nch-finance-modal-header small,
.nch-dispatch-modal .nch-finance-modal-header small {
	display: block;
	margin-top: 5px;
	color: var(--nch-muted);
	font-size: 12px;
	overflow-wrap: anywhere;
}

.nch-work-order-detail-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 14px;
}

.nch-work-order-detail-head strong {
	font-size: 13px;
}

.nch-work-order-kpis {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	overflow: hidden;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #f8fafc;
}

.nch-work-order-kpis > div {
	min-width: 0;
	padding: 14px;
	border-right: 1px solid var(--nch-line);
}

.nch-work-order-kpis > div:last-child {
	border-right: 0;
}

.nch-work-order-kpis span,
.nch-work-order-kpis strong,
.nch-work-order-meta span,
.nch-work-order-meta strong {
	display: block;
	overflow-wrap: anywhere;
}

.nch-work-order-kpis span,
.nch-work-order-meta span {
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-work-order-kpis strong {
	margin-top: 6px;
	font-size: 19px;
	font-variant-numeric: tabular-nums;
}

.nch-work-order-meta {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-top: 14px;
}

.nch-work-order-meta > div {
	min-width: 0;
	padding: 12px 14px;
	border-left: 3px solid #b7c7df;
	background: #f8fafc;
}

.nch-work-order-meta strong {
	margin-top: 5px;
	font-size: 13px;
}

.nch-work-order-materials {
	margin-top: 18px;
	padding-top: 2px;
}

.nch-work-order-materials .nch-section-heading > span {
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 800;
}

.nch-work-order-materials .nch-table {
	min-width: 720px;
}

.nch-work-order-materials td strong,
.nch-work-order-materials td small {
	display: block;
}

.nch-work-order-materials td small {
	margin-top: 3px;
	color: var(--nch-muted);
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background: var(--nch-bg);
	color: var(--nch-ink);
}

a {
	color: inherit;
	text-decoration: none;
}

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

.nch-sidebar {
	position: sticky;
	top: 0;
	display: flex;
	height: 100vh;
	flex-direction: column;
	gap: 20px;
	padding: 24px 18px;
	overflow-y: auto;
	border-right: 1px solid var(--nch-line);
	background: #101828;
	color: #ffffff;
}

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

.nch-brand-mark {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 8px;
	background: #ffffff;
	color: #101828;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0;
}

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

.nch-brand strong {
	font-size: 17px;
	letter-spacing: 0;
}

.nch-brand small {
	margin-top: 2px;
	color: #b8c0cc;
	font-size: 12px;
}

.nch-nav {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.nch-nav a {
	padding: 8px 10px;
	border-radius: 6px;
	color: #d7dee8;
	font-size: 13px;
	font-weight: 600;
}

.nch-nav a:hover,
.nch-nav a.is-active {
	background: rgba(255, 255, 255, 0.1);
	color: #ffffff;
}

.nch-nav-category {
	min-width: 0;
	padding: 4px 0;
	border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.nch-nav-category:last-child {
	border-bottom: 0;
}

.nch-nav-category summary {
	position: relative;
	padding: 8px 26px 8px 10px;
	color: #8f9bad;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0;
	list-style: none;
	text-transform: uppercase;
	cursor: pointer;
	user-select: none;
}

.nch-nav-category summary::-webkit-details-marker {
	display: none;
}

.nch-nav-category summary::after {
	content: "+";
	position: absolute;
	top: 50%;
	right: 10px;
	color: #98a2b3;
	font-size: 14px;
	transform: translateY(-50%);
}

.nch-nav-category[open] summary::after {
	content: "\2212";
}

.nch-nav-category summary:hover {
	color: #d7dee8;
}

.nch-nav-category-links {
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 0 0 5px;
}

.nch-main {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 24px;
	padding: 28px;
}

.nch-topbar,
.nch-section-heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}

.nch-eyebrow {
	margin: 0 0 5px;
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: uppercase;
}

h1,
h2,
h3 {
	margin: 0;
	letter-spacing: 0;
}

h1 {
	font-size: 30px;
	line-height: 1.15;
}

h2 {
	font-size: 22px;
	line-height: 1.2;
}

h3 {
	font-size: 16px;
	line-height: 1.3;
}

.nch-user-strip {
	display: flex;
	align-items: center;
	gap: 12px;
}

.nch-location-select {
	width: 260px;
	max-width: 40vw;
	height: 40px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: var(--nch-surface);
	color: var(--nch-ink);
	font-size: 14px;
}

.nch-user {
	min-width: 170px;
	padding: 8px 12px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: var(--nch-surface);
}

.nch-user strong,
.nch-user span {
	display: block;
}

.nch-user strong {
	font-size: 14px;
}

.nch-user span {
	margin-top: 2px;
	color: var(--nch-muted);
	font-size: 12px;
}

.nch-kpi-grid,
.nch-module-grid,
.nch-location-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	gap: 12px;
}

.nch-kpi,
.nch-panel,
.nch-module,
.nch-location {
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: var(--nch-surface);
	box-shadow: var(--nch-shadow);
}

.nch-kpi {
	padding: 18px;
}

.nch-kpi span {
	display: block;
	color: var(--nch-muted);
	font-size: 13px;
	font-weight: 650;
}

.nch-kpi strong {
	display: block;
	margin-top: 10px;
	font-size: 28px;
	line-height: 1;
}

.nch-section {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.nch-action-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 8px;
}

.nch-action-row.is-tight {
	gap: 6px;
}

.nch-button {
	display: inline-flex;
	min-height: 38px;
	align-items: center;
	justify-content: center;
	padding: 0 13px;
	border-radius: 8px;
	background: var(--nch-blue);
	color: #ffffff;
	font-size: 13px;
	font-weight: 700;
}

.nch-button.is-small {
	min-height: 32px;
	padding: 7px 10px;
	font-size: 12px;
}

.nch-button.is-advanced {
	background: #344054;
}

.nch-finance-page {
	gap: 18px;
}

.nch-finance-topbar {
	align-items: center;
}

.nch-page-subtitle,
.nch-panel-note {
	margin: 6px 0 0;
	color: var(--nch-muted);
	font-size: 13px;
	line-height: 1.45;
}

.nch-finance-actions {
	max-width: 100%;
	flex: 0 1 auto;
}

.nch-finance-actions .nch-button {
	white-space: nowrap;
}

.nch-filter-bar.nch-finance-period {
	align-items: end;
	width: 100%;
	max-width: 1120px;
	grid-template-columns: minmax(260px, 1fr) minmax(260px, 1fr) auto;
	padding: 14px 16px;
}

.nch-finance-period .nch-button {
	height: 40px;
	min-height: 40px;
	margin-left: 0;
}

.nch-finance-tabs {
	position: static;
	overflow-x: auto;
	flex-wrap: nowrap;
	padding: 6px;
}

.nch-finance-tabs button {
	white-space: nowrap;
}

.nch-finance-kpis .nch-kpi {
	min-width: 0;
}

.nch-finance-kpis .nch-kpi strong {
	overflow: hidden;
	text-overflow: ellipsis;
}

.nch-finance-kpis .nch-kpi small {
	display: block;
	margin-top: 7px;
	color: var(--nch-muted);
	font-size: 12px;
}

.nch-intelligence-kpis {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.nch-intelligence-kpis .nch-kpi {
	min-width: 0;
}

.nch-intelligence-kpis .nch-kpi strong {
	overflow: hidden;
	font-size: 26px;
	text-overflow: ellipsis;
}

.nch-intelligence-kpis .nch-kpi small {
	display: block;
	margin-top: 8px;
	color: var(--nch-muted);
	font-size: 12px;
}

.nch-delta.is-positive,
.nch-number.is-positive {
	color: #027a48 !important;
}

.nch-delta.is-negative,
.nch-number.is-negative {
	color: #b42318 !important;
}

.nch-intelligence-primary,
.nch-intelligence-secondary {
	display: grid;
	gap: 12px;
}

.nch-intelligence-primary {
	grid-template-columns: minmax(0, 1.6fr) minmax(300px, .7fr);
}

.nch-intelligence-secondary {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nch-trend-panel,
.nch-intelligence-panel {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 16px;
}

.nch-chart-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 700;
}

.nch-chart-legend span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.nch-chart-legend i {
	width: 9px;
	height: 9px;
	border-radius: 2px;
	background: var(--nch-blue);
}

.nch-chart-legend i.is-expense {
	background: #dc6803;
}

.nch-finance-column-chart {
	display: flex;
	min-height: 250px;
	align-items: stretch;
	gap: 10px;
	overflow-x: auto;
	padding: 8px 4px 0;
	border-bottom: 1px solid var(--nch-line);
}

.nch-finance-month {
	display: grid;
	min-width: 82px;
	flex: 1 0 82px;
	grid-template-rows: 180px auto auto;
	gap: 6px;
	text-align: center;
}

.nch-finance-bars {
	display: flex;
	height: 180px;
	align-items: flex-end;
	justify-content: center;
	gap: 5px;
	padding: 0 10px;
	border-bottom: 1px solid #cfd6e1;
}

.nch-finance-bars > span {
	width: min(24px, 40%);
	min-height: 2px;
	border-radius: 4px 4px 0 0;
	background: var(--nch-blue);
}

.nch-finance-bars > span.is-expense {
	background: #dc6803;
}

.nch-finance-month > strong {
	font-size: 12px;
}

.nch-finance-month > small {
	color: var(--nch-muted);
	font-size: 10px;
	line-height: 1.3;
}

.nch-insight-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.nch-insight {
	display: block;
	padding: 11px 12px;
	border-left: 3px solid #98a2b3;
	border-radius: 0 6px 6px 0;
	background: #f8fafc;
}

.nch-insight.is-positive {
	border-left-color: #12b76a;
	background: #f6fef9;
}

.nch-insight.is-warning {
	border-left-color: #f79009;
	background: #fffcf5;
}

.nch-insight.is-critical {
	border-left-color: #f04438;
	background: #fff6f5;
}

.nch-insight strong,
.nch-insight span {
	display: block;
}

.nch-insight strong {
	font-size: 13px;
}

.nch-insight span {
	margin-top: 3px;
	color: var(--nch-muted);
	font-size: 12px;
	line-height: 1.4;
}

.nch-health-rows,
.nch-driver-list {
	display: flex;
	flex-direction: column;
	margin-top: 14px;
}

.nch-health-rows > a,
.nch-health-rows > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 12px 0;
	border-bottom: 1px solid var(--nch-line);
}

.nch-health-rows > :last-child {
	border-bottom: 0;
}

.nch-health-rows span,
.nch-health-rows small {
	display: block;
}

.nch-health-rows span {
	font-size: 13px;
	font-weight: 700;
}

.nch-health-rows small {
	margin-top: 3px;
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 500;
}

.nch-health-rows strong {
	white-space: nowrap;
}

.nch-health-rows strong.is-warning {
	color: #b54708;
}

.nch-driver-list {
	gap: 12px;
}

.nch-driver-list > div > div:first-child {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	font-size: 13px;
}

.nch-driver-track {
	height: 7px;
	margin-top: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: #edf1f6;
}

.nch-driver-track span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: #dc6803;
}

.nch-driver-list small {
	display: block;
	margin-top: 4px;
	color: var(--nch-muted);
	font-size: 10px;
}

.nch-location-intelligence {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.nch-finance-shortcuts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.nch-finance-shortcut {
	min-width: 0;
	padding: 18px;
	color: var(--nch-ink);
}

.nch-finance-shortcut:hover {
	border-color: var(--nch-blue);
	color: var(--nch-ink);
}

.nch-finance-shortcut span {
	display: block;
	margin-top: 8px;
	color: var(--nch-muted);
	font-size: 13px;
	line-height: 1.45;
}

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

.nch-finance-report {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.nch-pl-summary {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: var(--nch-surface);
	box-shadow: var(--nch-shadow);
	overflow: hidden;
}

.nch-pl-summary > div {
	min-width: 0;
	padding: 18px 20px;
	border-right: 1px solid var(--nch-line);
}

.nch-pl-summary > div:last-child {
	border-right: 0;
}

.nch-pl-summary span,
.nch-pl-summary strong {
	display: block;
}

.nch-pl-summary span {
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-pl-summary strong {
	margin-top: 8px;
	font-size: 24px;
	line-height: 1.1;
}

.nch-pl-summary .is-positive strong,
.nch-profit-net.is-positive strong {
	color: #027a48;
}

.nch-pl-summary .is-negative strong,
.nch-profit-net.is-negative strong {
	color: #b42318;
}

.nch-profit-section {
	display: flex;
	min-width: 0;
	flex-direction: column;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: var(--nch-surface);
	box-shadow: var(--nch-shadow);
	overflow: hidden;
}

.nch-profit-section > header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 16px 18px;
	border-bottom: 1px solid var(--nch-line);
	background: #f8fafc;
}

.nch-profit-section > header h3 {
	margin: 0;
}

.nch-profit-section > header > strong {
	font-size: 17px;
}

.nch-profit-rows {
	min-height: 120px;
	padding: 4px 18px;
}

.nch-profit-rows > div,
.nch-profit-section > footer,
.nch-profit-net {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

.nch-profit-rows > div {
	padding: 12px 0;
	border-bottom: 1px solid var(--nch-line);
	font-size: 14px;
}

.nch-profit-rows > div:last-child {
	border-bottom: 0;
}

.nch-profit-rows p {
	margin: 18px 0;
	color: var(--nch-muted);
	font-size: 13px;
}

.nch-profit-section > footer {
	margin-top: auto;
	padding: 14px 18px;
	border-top: 1px solid var(--nch-line);
	background: #f8fafc;
	font-weight: 800;
}

.nch-profit-net {
	grid-column: 1 / -1;
	padding: 16px 18px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #f4f8ff;
	font-size: 18px;
	font-weight: 800;
}

.nch-journal-form {
	min-width: 0;
}

.nch-journal-lines {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-top: 14px;
}

.nch-journal-line {
	display: grid;
	grid-template-columns: minmax(150px, 1.4fr) minmax(90px, .6fr) minmax(90px, .6fr) minmax(120px, 1fr) auto;
	gap: 8px;
	align-items: center;
}

.nch-icon-button {
	width: 38px;
	min-height: 38px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fff;
	color: #b42318;
	font-size: 12px;
	font-weight: 700;
}

.nch-journal-totals {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 14px;
	padding: 10px 12px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #f8fafc;
	font-size: 13px;
}

.nch-journal-totals span:last-child {
	margin-left: auto;
	font-weight: 800;
	color: #027a48;
}

.nch-journal-totals .is-error {
	color: #b42318 !important;
}

.nch-journal-totals .is-pending {
	color: var(--nch-muted) !important;
}

.nch-balance-status {
	display: inline-flex;
	min-height: 32px;
	align-items: center;
	padding: 0 10px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 800;
}

.nch-balance-status.is-balanced {
	background: #ecfdf3;
	color: #027a48;
}

.nch-balance-status.is-unbalanced {
	background: #fef3f2;
	color: #b42318;
}

.nch-finance-modal {
	width: min(960px, calc(100vw - 32px));
	max-height: calc(100dvh - 32px);
	margin: auto;
	padding: 0;
	border: 0;
	border-radius: 8px;
	background: transparent;
	overflow: hidden;
}

.nch-finance-modal.is-compact {
	width: min(560px, calc(100vw - 32px));
}

.nch-finance-modal::backdrop {
	background: rgba(16, 24, 40, 0.48);
}

.nch-finance-modal-form {
	max-height: calc(100dvh - 32px);
	margin: 0;
	gap: 0;
	overflow: hidden;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: var(--nch-surface);
	box-shadow: 0 24px 64px rgba(16, 24, 40, 0.28);
}

.nch-finance-modal-header,
.nch-finance-modal-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 18px 20px;
}

.nch-finance-modal-header {
	border-bottom: 1px solid var(--nch-line);
}

.nch-finance-modal-footer {
	justify-content: flex-end;
	border-top: 1px solid var(--nch-line);
	background: #f8fafc;
}

.nch-finance-modal-body {
	overflow-y: auto;
	padding: 20px;
}

.nch-account-form .nch-form-grid {
	grid-template-columns: minmax(0, 1fr);
}

.nch-account-form .nch-finance-modal-body {
	padding-bottom: 24px;
}

.nch-modal-close {
	width: 34px;
	height: 34px;
	min-height: 34px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fff;
	color: var(--nch-ink);
	font-size: 22px;
	font-weight: 700;
	line-height: 1;
}

.nch-journal-meta {
	margin-bottom: 18px;
}

.nch-journal-column-head {
	display: grid;
	grid-template-columns: minmax(180px, 1.4fr) minmax(100px, .6fr) minmax(100px, .6fr) minmax(140px, 1fr) 38px;
	gap: 8px;
	padding: 0 0 7px;
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-add-line-button {
	min-height: 36px;
	margin-top: 10px;
	padding: 0 12px;
	border: 1px dashed #98a2b3;
	border-radius: 8px;
	background: #fff;
	color: #344054;
	font-size: 12px;
	font-weight: 800;
}

.nch-text-link {
	display: inline-flex;
	margin-top: 10px;
	color: var(--nch-blue);
	font-size: 13px;
	font-weight: 800;
}

.nch-work-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.55fr);
	gap: 12px;
}

.nch-work-grid.is-single {
	grid-template-columns: minmax(0, 1fr);
}

.nch-tab-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 8px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fbfcfe;
}

.nch-tab-list button,
.nch-tab-list a {
	display: inline-flex;
	min-height: 38px;
	align-items: center;
	justify-content: center;
	padding: 0 14px;
	border: 1px solid transparent;
	border-radius: 8px;
	background: transparent;
	color: var(--nch-muted);
	font: inherit;
	font-size: 13px;
	font-weight: 800;
	cursor: pointer;
}

.nch-tab-list button.is-active,
.nch-tab-list a.is-active {
	border-color: var(--nch-line);
	background: #ffffff;
	color: var(--nch-ink);
	box-shadow: 0 1px 2px rgba(16, 24, 40, 0.08);
}

.nch-tab-panel {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.nch-primary-form {
	width: 100%;
}

.nch-supplier-create-form {
	max-width: 720px;
}

.nch-form-group-label {
	margin: 4px 0 -2px;
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
}

.nch-field-hint {
	display: block;
	margin-top: 6px;
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.35;
}

.nch-toggle-row {
	display: flex;
	align-items: center;
	gap: 10px;
	width: fit-content;
	min-height: 50px;
	padding: 10px 12px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #f8fafc;
	cursor: pointer;
}

.nch-toggle-row.is-compact {
	min-height: 44px;
	padding: 8px 10px;
}

.nch-toggle-row input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.nch-toggle-control {
	position: relative;
	width: 36px;
	height: 20px;
	flex: 0 0 36px;
	border-radius: 999px;
	background: #98a2b3;
	transition: background 160ms ease;
}

.nch-toggle-control::after {
	position: absolute;
	top: 3px;
	left: 3px;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #ffffff;
	content: "";
	transition: transform 160ms ease;
}

.nch-toggle-row input:checked + .nch-toggle-control {
	background: var(--nch-blue);
}

.nch-toggle-row input:checked + .nch-toggle-control::after {
	transform: translateX(16px);
}

.nch-toggle-row input:focus-visible + .nch-toggle-control {
	outline: 2px solid var(--nch-blue);
	outline-offset: 2px;
}

.nch-toggle-copy {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.nch-toggle-copy strong {
	font-size: 13px;
}

.nch-toggle-copy small {
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 600;
}

.nch-approval-rule-toggle {
	width: min(380px, 100%);
	min-height: 58px;
	justify-content: space-between;
	gap: 16px;
	padding: 10px 12px 10px 14px;
	background: #ffffff;
}

.nch-approval-rule-toggle .nch-toggle-copy {
	min-width: 0;
	flex: 1 1 auto;
}

.nch-approval-rule-toggle .nch-toggle-copy small {
	line-height: 1.35;
}

.nch-approval-rule-toggle .nch-toggle-control {
	flex: 0 0 36px;
}

.nch-procurement-subsection {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.nch-supplier-admin-grid {
	display: grid;
	grid-template-columns: minmax(340px, 0.78fr) minmax(0, 1.22fr);
	gap: 14px;
	align-items: stretch;
}

.nch-supplier-admin-grid .nch-supplier-create-form {
	height: 100%;
	max-width: none;
}

.nch-supplier-admin-grid .nch-submit-bar.is-compact {
	margin-top: auto;
}

.nch-submit-bar.is-compact {
	position: static;
	z-index: auto;
	min-height: auto;
	justify-content: flex-end;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.nch-submit-bar.is-compact p {
	margin-right: auto;
	font-size: 13px;
	font-weight: 700;
}

.nch-panel {
	min-width: 0;
	padding: 18px;
}

.nch-panel h3 {
	margin-bottom: 14px;
}

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

.nch-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}

.nch-table th,
.nch-table td {
	padding: 12px 10px;
	border-bottom: 1px solid var(--nch-line);
	text-align: left;
	vertical-align: top;
	white-space: nowrap;
}

.nch-table th {
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-number {
	text-align: right;
}

.nch-steps {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 0;
	padding-left: 20px;
}

.nch-steps li strong,
.nch-steps li span {
	display: block;
}

.nch-steps li strong {
	font-size: 14px;
}

.nch-steps li span {
	margin-top: 2px;
	color: var(--nch-muted);
	font-size: 13px;
	line-height: 1.4;
}

.nch-module {
	display: flex;
	min-height: 148px;
	flex-direction: column;
	gap: 10px;
	padding: 16px;
}

.nch-module span {
	align-self: flex-start;
	padding: 4px 8px;
	border-radius: 999px;
	background: #eef4ff;
	color: var(--nch-blue);
	font-size: 12px;
	font-weight: 800;
}

.nch-module strong {
	font-size: 16px;
}

.nch-module small {
	color: var(--nch-muted);
	font-size: 13px;
	line-height: 1.45;
}

.nch-module.is-active {
	border-color: var(--nch-blue);
}

.nch-module.is-active span {
	background: #e7f8ed;
	color: var(--nch-green);
}

.nch-module.is-muted {
	opacity: 0.62;
}

.nch-location {
	padding: 15px;
}

.nch-location strong,
.nch-location span,
.nch-location small {
	display: block;
}

.nch-location strong {
	font-size: 14px;
}

.nch-location span {
	margin-top: 6px;
	color: var(--nch-muted);
	font-size: 13px;
}

.nch-location small {
	margin-top: 10px;
	color: var(--nch-green);
	font-size: 12px;
	font-weight: 800;
}

.nch-form {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.nch-form-section {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.nch-form-grid,
.nch-location-row {
	display: grid;
	grid-template-columns: repeat(4, minmax(150px, 1fr));
	gap: 14px;
}

.nch-form-grid.is-two-column {
	grid-template-columns: repeat(2, minmax(180px, 1fr));
}

.nch-form label,
.nch-location-row label {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 7px;
}

.nch-form label span,
.nch-location-row label span {
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-form label > small {
	color: var(--nch-muted);
	font-size: 11px;
	line-height: 1.35;
}

.nch-input-action {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 8px;
}

.nch-input-action .nch-button {
	height: 42px;
	white-space: nowrap;
}

.nch-category-field {
	grid-column: span 2;
}

.nch-category-modal .nch-panel-note {
	margin: 12px 0 0;
	color: var(--nch-muted);
	font-size: 12px;
}

.nch-form input,
.nch-form select,
.nch-form textarea {
	width: 100%;
	min-height: 42px;
	padding: 9px 11px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #ffffff;
	color: var(--nch-ink);
	font: inherit;
	font-size: 14px;
}

.nch-form input:focus,
.nch-form select:focus,
.nch-form textarea:focus {
	border-color: var(--nch-blue);
	box-shadow: 0 0 0 3px rgba(23, 92, 211, 0.12);
	outline: none;
}

.nch-form textarea {
	resize: vertical;
}

.nch-check-row {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.nch-check-row label {
	display: inline-flex;
	min-height: 38px;
	flex-direction: row;
	align-items: center;
	gap: 8px;
	padding: 8px 11px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #f8fafc;
	font-size: 14px;
	font-weight: 650;
}

.nch-check-row input,
.nch-default-check input {
	width: 18px;
	min-height: 18px;
}

.nch-help-line {
	padding: 11px 12px;
	border: 1px solid #b9d4ff;
	border-radius: 8px;
	background: #eef4ff;
	color: #1849a9;
	font-size: 13px;
	line-height: 1.45;
}

.nch-location-rows {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.nch-location-row {
	position: relative;
	align-items: end;
	padding: 14px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fbfcfe;
}

.nch-location-row label:first-child {
	grid-column: span 2;
}

.nch-default-check {
	align-items: flex-start;
}

.nch-default-check input {
	margin-top: 5px;
}

.nch-icon-button {
	min-height: 42px;
	padding: 0 12px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #ffffff;
	color: #b42318;
	font: inherit;
	font-size: 13px;
	font-weight: 800;
	cursor: pointer;
}

.nch-icon-button.is-remove,
.nch-icon-button[data-remove-journal-line],
.nch-icon-button[data-remove-budget-line] {
	display: inline-grid;
	width: 38px;
	min-width: 38px;
	height: 38px;
	min-height: 38px;
	place-items: center;
	align-self: center;
	padding: 0;
	border-color: #f0c5c1;
	background: #ffffff;
	color: #b42318;
	font-size: 22px;
	font-weight: 700;
	line-height: 1;
}

.nch-icon-button.is-remove:hover,
.nch-icon-button[data-remove-journal-line]:hover,
.nch-icon-button[data-remove-budget-line]:hover {
	border-color: #d92d20;
	background: #fff1f0;
	color: #912018;
}

.nch-icon-button.is-remove:focus-visible,
.nch-icon-button[data-remove-journal-line]:focus-visible,
.nch-icon-button[data-remove-budget-line]:focus-visible {
	border-color: #d92d20;
	box-shadow: 0 0 0 3px rgba(217, 45, 32, 0.14);
	outline: none;
}

.nch-icon-button.is-remove:disabled,
.nch-icon-button[data-remove-journal-line]:disabled,
.nch-icon-button[data-remove-budget-line]:disabled {
	cursor: not-allowed;
	opacity: 0.45;
}

@media (max-width: 640px) {
	.nch-location-row .nch-icon-button.is-remove,
	.nch-pos-cart-line .nch-icon-button.is-remove,
	.nch-sales-line .nch-icon-button.is-remove,
	.nch-holiday-line .nch-icon-button.is-remove,
	.nch-structure-line .nch-icon-button.is-remove {
		justify-self: end;
	}
}

.nch-row-guidance {
	grid-column: 1 / -1;
	margin: 0;
	color: var(--nch-muted);
	font-size: 13px;
	line-height: 1.4;
}

.nch-sales-items,
.nch-sales-lines {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.nch-sales-line {
	display: grid;
	grid-template-columns: minmax(240px, 1.4fr) minmax(100px, 0.5fr) minmax(120px, 0.55fr) minmax(130px, 0.55fr) auto;
	gap: 12px;
	align-items: end;
	padding: 12px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fbfcfe;
}

.nch-line-amount {
	min-height: 42px;
	padding: 8px 10px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #ffffff;
}

.nch-line-amount span,
.nch-line-amount strong,
.nch-line-amount small,
.nch-sales-total span,
.nch-sales-total strong {
	display: block;
}

.nch-line-amount span,
.nch-sales-total span {
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-line-amount strong,
.nch-sales-total strong {
	margin-top: 4px;
	font-size: 15px;
}

.nch-line-amount small {
	margin-top: 5px;
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 700;
}

.nch-line-amount small.is-warning {
	color: var(--nch-yellow);
}

.nch-sales-total {
	min-width: 120px;
	text-align: right;
}

.nch-pos-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(360px, 0.45fr);
	gap: 14px;
	align-items: start;
}

.nch-pos-products,
.nch-pos-cart,
.nch-pos-controls {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.nch-pos-cart .nch-form-grid.is-two-column {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nch-pos-product-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
	gap: 10px;
}

.nch-pos-location-strip,
.nch-pos-sale-type {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}

.nch-pos-location-strip div {
	padding: 10px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fbfcfe;
}

.nch-pos-location-strip span,
.nch-pos-location-strip strong {
	display: block;
}

.nch-pos-location-strip span {
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-pos-location-strip strong {
	margin-top: 5px;
	overflow: hidden;
	font-size: 13px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.nch-pos-sale-type {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nch-pos-sale-type label {
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 11px 12px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fbfcfe;
	cursor: pointer;
	font-weight: 800;
}

.nch-pos-sale-type input {
	width: 16px;
	min-height: 16px;
}

.nch-pos-product {
	display: flex;
	height: 116px;
	min-height: 116px;
	min-width: 0;
	flex-direction: column;
	padding: 12px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #ffffff;
	color: var(--nch-ink);
	cursor: pointer;
	font: inherit;
	overflow: hidden;
	text-align: left;
}

.nch-pos-product:hover {
	border-color: var(--nch-blue);
	box-shadow: 0 0 0 3px rgba(23, 92, 211, 0.1);
}

.nch-pos-product strong,
.nch-pos-product span,
.nch-pos-product small {
	display: block;
}

.nch-pos-product strong {
	display: -webkit-box;
	min-height: 38px;
	max-height: 38px;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	font-size: 14px;
	line-height: 19px;
	overflow: hidden;
	overflow-wrap: anywhere;
}

.nch-pos-product span {
	margin-top: 6px;
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 700;
}

.nch-pos-product small {
	margin-top: auto;
	color: var(--nch-green);
	font-size: 12px;
	font-weight: 800;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.nch-pos-cart-lines {
	display: flex;
	max-height: 460px;
	flex-direction: column;
	gap: 8px;
	overflow: auto;
}

.nch-pos-cart-line {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 74px 88px 82px auto;
	gap: 8px;
	align-items: center;
	padding: 10px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fbfcfe;
}

.nch-pos-cart-line strong,
.nch-pos-cart-line span {
	display: block;
}

.nch-pos-cart-item {
	min-width: 0;
}

.nch-pos-cart-item strong {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-height: 18px;
	overflow: hidden;
	overflow-wrap: anywhere;
}

.nch-pos-cart-line span {
	margin-top: 4px;
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 700;
}

.nch-pos-cart-line input {
	min-height: 36px;
	padding: 7px 8px;
}

.nch-pos-total-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #101828;
	color: #ffffff;
}

.nch-pos-total-box span {
	color: #d7dee8;
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-pos-total-box strong {
	font-size: 26px;
}

.nch-submit-bar {
	position: static;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 12px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.94);
	box-shadow: none;
}

.nch-pricing-request-form .nch-submit-bar {
	position: static;
}

.nch-submit-bar p {
	margin: 0;
	color: var(--nch-muted);
	font-size: 14px;
}

.nch-submit-bar p.is-error {
	color: #b42318;
}

.nch-submit-bar p.is-success {
	color: var(--nch-green);
}

#nch-customer-form .nch-customer-submit-bar {
	min-height: 56px;
	margin-top: 2px;
	padding: 16px 0 0;
	border: 0;
	border-top: 1px solid var(--nch-line);
	border-radius: 0;
	background: transparent;
}

#nch-customer-form .nch-customer-submit-bar p:empty {
	display: none;
}

#nch-customer-form .nch-customer-submit-bar .nch-button {
	min-width: 156px;
	margin-left: auto;
}

.nch-form-message {
	margin: 0;
	color: var(--nch-muted);
	font-size: 14px;
	font-weight: 700;
}

.nch-form-message.is-error {
	color: #b42318;
}

.nch-form-message.is-success {
	color: var(--nch-green);
}

.nch-inventory-list-panel {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.nch-filter-bar {
	display: grid;
	grid-template-columns: minmax(220px, 1.4fr) repeat(3, minmax(150px, 1fr));
	gap: 12px;
	padding: 14px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fbfcfe;
}

.nch-filter-bar.is-compact {
	grid-template-columns: 1fr;
	padding: 0;
	border: 0;
	background: transparent;
}

.nch-filter-bar.is-compact.nch-customer-filters {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nch-customer-filters label:first-child,
.nch-customer-filters label:last-child {
	grid-column: 1 / -1;
}

.nch-filter-bar label {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 7px;
}

.nch-filter-bar span {
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-filter-bar input,
.nch-filter-bar select {
	width: 100%;
	min-height: 40px;
	padding: 8px 10px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #ffffff;
	color: var(--nch-ink);
	font: inherit;
	font-size: 14px;
}

.nch-filter-bar input:focus,
.nch-filter-bar select:focus {
	border-color: var(--nch-blue);
	box-shadow: 0 0 0 3px rgba(23, 92, 211, 0.12);
	outline: none;
}

.nch-filter-actions {
	display: flex;
	align-items: end;
	gap: 8px;
}

.nch-filter-result {
	color: var(--nch-muted);
	font-size: 13px;
	font-weight: 700;
}

.nch-filter-result.is-error {
	color: #b42318;
}

.nch-filter-result.is-success {
	color: var(--nch-green);
}

.nch-inline-action {
	display: grid;
	grid-template-columns: minmax(92px, 0.8fr) minmax(120px, 1fr) auto;
	gap: 8px;
	align-items: center;
	min-width: 320px;
}

.nch-inline-action input,
.nch-inline-action select {
	width: 100%;
	min-height: 38px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #ffffff;
	color: var(--nch-ink);
	font: inherit;
	font-size: 14px;
}

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

.nch-chart-card {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 14px;
}

.nch-bar-chart {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.nch-chart-row {
	display: grid;
	grid-template-columns: minmax(150px, 0.42fr) minmax(0, 0.58fr);
	gap: 12px;
	align-items: center;
}

.nch-chart-label {
	min-width: 0;
}

.nch-chart-label strong,
.nch-chart-label span {
	display: block;
}

.nch-chart-label strong {
	overflow: hidden;
	font-size: 13px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.nch-chart-label span {
	margin-top: 4px;
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 800;
}

.nch-chart-track {
	height: 12px;
	overflow: hidden;
	border-radius: 999px;
	background: #edf1f6;
}

.nch-chart-track span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: var(--nch-blue);
}

.nch-chart-track.is-quantity span {
	background: var(--nch-green);
}

.nch-chart-series {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 5px;
}

.nch-chart-track.is-plan span {
	background: #697386;
}

.nch-chart-track.is-cost span {
	background: #7a5af8;
}

.nch-chart-track.is-warning span {
	background: #dc6803;
}

.nch-inventory-list {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.nch-inventory-card {
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 16px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fbfcfe;
}

.nch-inventory-card-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}

.nch-item-code {
	display: inline-flex;
	margin-bottom: 8px;
	padding: 4px 8px;
	border-radius: 999px;
	background: #eef4ff;
	color: var(--nch-blue);
	font-size: 12px;
	font-weight: 800;
}

.nch-inventory-card h3 {
	margin-bottom: 6px;
	font-size: 18px;
}

.nch-inventory-card p {
	margin: 0;
	color: var(--nch-muted);
	font-size: 13px;
}

.nch-item-metrics {
	display: grid;
	min-width: 360px;
	grid-template-columns: repeat(3, minmax(86px, 1fr));
	gap: 8px;
}

.nch-item-metrics div {
	padding: 10px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #ffffff;
}

.nch-item-metrics div.is-warning {
	border-color: #f6c96b;
	background: #fffaeb;
}

.nch-item-metrics span {
	display: block;
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-item-metrics strong {
	display: block;
	margin-top: 6px;
	font-size: 16px;
}

.nch-credit-strip {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}

.nch-credit-strip.is-compact {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nch-credit-strip div {
	padding: 12px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fbfcfe;
}

.nch-credit-strip span,
.nch-credit-strip strong {
	display: block;
}

.nch-credit-strip span {
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-credit-strip strong {
	margin-top: 6px;
	font-size: 14px;
}

.nch-customer-credit-policy,
.nch-credit-due-card {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 14px;
	padding: 16px;
	border: 1px solid #cbd9ee;
	border-radius: 8px;
	background: #f8fbff;
}

.nch-customer-details-panel {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 16px;
}

.nch-customer-credit-policy {
	gap: 12px;
	padding: 14px 16px 16px;
	background: #fbfcfe;
}

.nch-customer-credit-policy-heading,
.nch-credit-due-summary {
	display: flex;
	min-width: 0;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.nch-customer-credit-policy-heading h3 {
	margin: 0;
	font-size: 16px;
}

.nch-customer-credit-policy-heading > small,
.nch-credit-due-summary > small {
	max-width: 360px;
	color: var(--nch-muted);
	font-size: 12px;
	line-height: 1.45;
	text-align: right;
}

.nch-input-suffix {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	overflow: hidden;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #ffffff;
}

.nch-form .nch-input-suffix input {
	border: 0;
	border-radius: 0;
}

.nch-form .nch-input-suffix > span {
	display: flex;
	align-items: center;
	padding: 0 12px;
	border-left: 1px solid var(--nch-line);
	background: #eef3f9;
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 800;
	text-transform: none;
}

.nch-credit-due-card[hidden],
.nch-customer-credit-policy[hidden],
.nch-credit-due-card [hidden] {
	display: none;
}

.nch-credit-due-summary span,
.nch-credit-due-summary strong {
	display: block;
}

.nch-credit-due-summary span {
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-credit-due-summary strong {
	margin-top: 4px;
	font-size: 19px;
}

.nch-form label.nch-credit-due-toggle {
	margin-top: 0;
}

.nch-credit-due-card .nch-row-guidance {
	margin: 0;
	color: var(--nch-muted);
	font-size: 12px;
	line-height: 1.45;
}

.nch-credit-due-card.is-modal {
	padding: 14px;
}

.nch-text-danger {
	color: #b42318;
	font-weight: 800;
}

@media (max-width: 640px) {
	.nch-customer-credit-policy-heading,
	.nch-credit-due-summary {
		align-items: flex-start;
		flex-direction: column;
		gap: 7px;
	}

	.nch-customer-credit-policy-heading > small,
	.nch-credit-due-summary > small {
		max-width: none;
		text-align: left;
	}
}

.nch-customer-audit {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	padding-top: 14px;
	border-top: 1px solid var(--nch-line);
}

.nch-customer-audit div {
	min-width: 0;
}

.nch-customer-audit span,
.nch-customer-audit strong,
.nch-customer-audit small {
	display: block;
	overflow-wrap: anywhere;
}

.nch-customer-audit span {
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-customer-audit strong {
	margin-top: 6px;
	font-size: 13px;
}

.nch-customer-audit small {
	margin-top: 4px;
	color: var(--nch-muted);
}

.nch-customer-audit p {
	grid-column: 1 / -1;
	margin: 0;
	padding: 10px 12px;
	border-left: 3px solid #b42318;
	background: #fff4f2;
	color: #912018;
	font-size: 13px;
}

.nch-customer-workspace {
	grid-template-columns: minmax(280px, 0.34fr) minmax(0, 0.66fr);
}

.nch-customer-tabs {
	position: sticky;
	top: 8px;
	z-index: 3;
}

.nch-customer-profile-panel {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 16px;
}

.nch-customer-profile-panel[hidden] {
	display: none;
}

.nch-customer-history-kpis {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	overflow: hidden;
}

.nch-customer-history-kpis div {
	min-width: 0;
	padding: 14px;
	border-right: 1px solid var(--nch-line);
	background: #fbfcfe;
}

.nch-customer-history-kpis div:last-child {
	border-right: 0;
}

.nch-customer-history-kpis span,
.nch-customer-history-kpis strong,
.nch-customer-profile-meta span,
.nch-customer-profile-meta strong {
	display: block;
	overflow-wrap: anywhere;
}

.nch-customer-history-kpis span,
.nch-customer-profile-meta span {
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-customer-history-kpis strong {
	margin-top: 7px;
	font-size: 18px;
}

.nch-customer-profile-meta {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.nch-customer-profile-meta div {
	padding: 12px 14px;
	border-left: 3px solid #175cd3;
	background: #f5f8ff;
}

.nch-customer-profile-meta strong {
	margin-top: 5px;
	font-size: 14px;
}

.nch-customer-activity {
	display: flex;
	flex-direction: column;
	border-top: 1px solid var(--nch-line);
}

.nch-customer-activity-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 12px 2px;
	border-bottom: 1px solid var(--nch-line);
}

.nch-customer-activity-row div {
	min-width: 0;
}

.nch-customer-activity-row span,
.nch-customer-activity-row strong,
.nch-customer-activity-row small {
	display: block;
	overflow-wrap: anywhere;
}

.nch-customer-activity-row span {
	color: var(--nch-blue);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-customer-activity-row strong {
	margin-top: 3px;
	font-size: 13px;
}

.nch-customer-activity-row small {
	margin-top: 3px;
	color: var(--nch-muted);
}

.nch-customer-activity-row .is-right {
	flex: 0 0 auto;
	text-align: right;
}

.nch-customer-history-table {
	min-width: 760px;
}

.nch-customer-history-table .is-number {
	text-align: right;
	white-space: nowrap;
}

.nch-customer-items-cell {
	max-width: 220px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.nch-location-stock-table th,
.nch-location-stock-table td {
	white-space: normal;
}

.nch-status {
	display: inline-flex;
	min-height: 24px;
	align-items: center;
	padding: 0 8px;
	border-radius: 999px;
	background: #f2f4f7;
	color: #475467;
	font-size: 12px;
	font-weight: 800;
	white-space: nowrap;
}

.nch-status.is-ok {
	background: #e7f8ed;
	color: var(--nch-green);
}

.nch-status.is-warning {
	background: #fffaeb;
	color: var(--nch-yellow);
}

.nch-status.is-danger {
	background: #fef3f2;
	color: #b42318;
}

.nch-doc-links {
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.nch-doc-links a {
	color: var(--nch-blue);
	font-size: 12px;
	font-weight: 800;
	text-decoration: underline;
	text-underline-offset: 2px;
	white-space: nowrap;
}

.nch-doc-links small {
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 700;
}

.nch-debtor-settlement-panel .nch-section-heading {
	align-items: center;
}

.nch-debtor-settlement-panel .nch-table-wrap {
	overflow-x: hidden;
}

.nch-debtor-tabs {
	margin-bottom: 16px;
}

.nch-debtor-panel {
	display: grid;
	gap: 16px;
}

.nch-debtor-invoice-table {
	table-layout: fixed;
}

.nch-debtor-invoice-table th:nth-child(1) { width: 19%; }
.nch-debtor-invoice-table th:nth-child(2) { width: 23%; }
.nch-debtor-invoice-table th:nth-child(3) { width: 16%; }
.nch-debtor-invoice-table th:nth-child(4) { width: 15%; }
.nch-debtor-invoice-table th:nth-child(5) { width: 10%; }
.nch-debtor-invoice-table th:nth-child(6) { width: 9%; }
.nch-debtor-invoice-table th:nth-child(7) { width: 8%; }

.nch-debtor-invoice-table th,
.nch-debtor-invoice-table td {
	vertical-align: middle;
	white-space: normal;
}

.nch-debtor-invoice-table td:first-child,
.nch-debtor-invoice-table td:nth-child(2),
.nch-debtor-invoice-table td:nth-child(3) {
	overflow-wrap: anywhere;
}

.nch-debtor-invoice-table td:nth-child(4) .nch-status {
	margin-top: 6px;
}

.nch-debtor-invoice-id {
	display: block;
	max-width: 100%;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.nch-table-action {
	text-align: right;
	white-space: nowrap;
}

.nch-debtor-history-table {
	table-layout: fixed;
}

.nch-debtor-history-table th:nth-child(1) { width: 19%; }
.nch-debtor-history-table th:nth-child(2) { width: 29%; }
.nch-debtor-history-table th:nth-child(3) { width: 20%; }
.nch-debtor-history-table th:nth-child(4) { width: 24%; }
.nch-debtor-history-table th:nth-child(5) { width: 8%; }

.nch-debtor-history-table td {
	vertical-align: middle;
	white-space: normal;
	overflow-wrap: anywhere;
}

.nch-settlement-summary {
	display: grid;
	grid-template-columns: 1.3fr 1fr 0.8fr;
	margin-bottom: 20px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #f8fafc;
	overflow: hidden;
}

.nch-settlement-summary > div {
	min-width: 0;
	padding: 14px 16px;
	border-right: 1px solid var(--nch-line);
}

.nch-settlement-summary > div:last-child {
	border-right: 0;
	text-align: right;
}

.nch-settlement-summary span,
.nch-settlement-summary strong,
.nch-settlement-summary small {
	display: block;
}

.nch-settlement-summary span {
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-settlement-summary strong {
	margin-top: 5px;
	font-size: 15px;
	overflow-wrap: anywhere;
}

.nch-settlement-summary small {
	margin-top: 3px;
	color: var(--nch-muted);
}

.nch-settlement-fields label > small {
	margin-top: 5px;
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 700;
}

.nch-debtor-profile-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
	gap: 14px;
}

.nch-debtor-profile {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 14px;
	padding: 14px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fbfcfe;
}

.nch-debtor-profile header {
	display: flex;
	align-items: start;
	justify-content: space-between;
	gap: 12px;
}

.nch-debtor-profile h3,
.nch-debtor-profile h4,
.nch-debtor-profile p {
	margin: 0;
}

.nch-debtor-profile h3 {
	font-size: 16px;
}

.nch-debtor-profile header p,
.nch-history-columns p {
	margin-top: 5px;
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 700;
}

.nch-debtor-profile header > strong {
	font-size: 18px;
	text-align: right;
}

.nch-profile-metrics,
.nch-history-columns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.nch-profile-metrics div {
	padding: 10px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #ffffff;
}

.nch-profile-metrics span,
.nch-profile-metrics strong {
	display: block;
}

.nch-profile-metrics span {
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-profile-metrics strong {
	margin-top: 5px;
	font-size: 14px;
}

.nch-history-columns h4 {
	font-size: 12px;
	text-transform: uppercase;
	color: var(--nch-muted);
}

.nch-empty-state {
	display: flex;
	min-height: 240px;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 28px;
	text-align: center;
}

.nch-empty-state p {
	margin: 0;
	color: var(--nch-muted);
}

.nch-empty-state.is-small {
	min-height: 160px;
}

.nch-user-admin-layout {
	display: grid;
	grid-template-columns: minmax(280px, 0.42fr) minmax(0, 0.58fr);
	gap: 14px;
	align-items: start;
}

.nch-user-list-panel,
.nch-user-access-form,
.nch-location-access-section {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.nch-user-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.nch-user-list-item {
	width: 100%;
	padding: 12px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #ffffff;
	color: var(--nch-ink);
	cursor: pointer;
	font: inherit;
	text-align: left;
}

.nch-user-list-item:hover,
.nch-user-list-item.is-active {
	border-color: var(--nch-blue);
	box-shadow: 0 0 0 3px rgba(23, 92, 211, 0.1);
}

.nch-user-list-item strong,
.nch-user-list-item span,
.nch-user-list-item small {
	display: block;
}

.nch-user-list-item strong {
	font-size: 14px;
}

.nch-user-list-item span {
	margin-top: 4px;
	color: var(--nch-muted);
	font-size: 13px;
}

.nch-user-list-item small {
	margin-top: 8px;
	color: var(--nch-blue);
	font-size: 12px;
	font-weight: 800;
}

.nch-location-check-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 10px;
}

.nch-location-check {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 12px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fbfcfe;
}

.nch-location-check input {
	width: 18px;
	min-height: 18px;
	margin-top: 2px;
}

.nch-location-check span,
.nch-location-check strong,
.nch-location-check small {
	display: block;
}

.nch-location-check strong {
	font-size: 14px;
}

.nch-location-check small {
	margin-top: 4px;
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 700;
}

@media (max-width: 900px) {
	.nch-app-shell {
		grid-template-columns: 1fr;
	}

	.nch-sidebar {
		position: static;
		height: auto;
	}

	.nch-nav {
		flex-direction: row;
		flex-wrap: wrap;
	}

	.nch-main {
		padding: 20px;
	}

	.nch-topbar,
	.nch-section-heading,
	.nch-user-strip {
		align-items: stretch;
		flex-direction: column;
	}

	.nch-location-select {
		width: 100%;
		max-width: none;
	}

	.nch-user {
		width: 100%;
	}

	.nch-action-row {
		justify-content: flex-start;
	}

	.nch-work-grid {
		grid-template-columns: 1fr;
	}

	.nch-pos-layout {
		grid-template-columns: 1fr;
	}

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

	.nch-pos-location-strip,
	.nch-pos-sale-type {
		grid-template-columns: 1fr;
	}

	.nch-form-grid,
	.nch-location-row,
	.nch-sales-line,
	.nch-supplier-admin-grid {
		grid-template-columns: 1fr;
	}

	.nch-input-action {
		grid-template-columns: 1fr;
	}

	.nch-category-field {
		grid-column: auto;
	}

	.nch-input-action .nch-button {
		width: 100%;
	}

	.nch-pos-cart .nch-form-grid.is-two-column {
		grid-template-columns: 1fr;
	}

	.nch-location-row label:first-child {
		grid-column: auto;
	}

	.nch-submit-bar {
		align-items: stretch;
		flex-direction: column;
	}

	.nch-sales-total {
		text-align: left;
	}

	.nch-pos-cart-line {
		grid-template-columns: 1fr;
	}

	.nch-debtor-invoice-table {
		min-width: 780px;
		table-layout: auto;
	}

	.nch-debtor-settlement-panel .nch-table-wrap {
		overflow-x: auto;
	}

	.nch-settlement-summary {
		grid-template-columns: 1fr;
	}

	.nch-settlement-summary > div,
	.nch-settlement-summary > div:last-child {
		border-right: 0;
		border-bottom: 1px solid var(--nch-line);
		text-align: left;
	}

	.nch-settlement-summary > div:last-child {
		border-bottom: 0;
	}

	.nch-profile-metrics,
	.nch-history-columns {
		grid-template-columns: 1fr;
	}

	.nch-inventory-card-head {
		flex-direction: column;
	}

	.nch-item-metrics {
		width: 100%;
		min-width: 0;
		grid-template-columns: 1fr;
	}

	.nch-credit-strip {
		grid-template-columns: 1fr;
	}

	.nch-filter-bar {
		grid-template-columns: 1fr;
	}

	.nch-filter-bar.is-compact.nch-customer-filters,
	.nch-customer-audit {
		grid-template-columns: 1fr;
	}

	.nch-customer-filters label:first-child,
	.nch-customer-filters label:last-child,
	.nch-customer-audit p {
		grid-column: auto;
	}

	.nch-filter-bar.nch-finance-period {
		grid-template-columns: 1fr;
	}

	.nch-finance-period .nch-button {
		width: 100%;
	}

	.nch-finance-shortcuts {
		grid-template-columns: 1fr;
	}

	.nch-intelligence-kpis,
	.nch-intelligence-primary,
	.nch-intelligence-secondary {
		grid-template-columns: 1fr;
	}

	.nch-finance-column-chart {
		min-height: 230px;
	}

	.nch-pl-summary,
	.nch-profit-loss {
		grid-template-columns: 1fr;
	}

	.nch-pl-summary > div {
		border-right: 0;
		border-bottom: 1px solid var(--nch-line);
	}

	.nch-pl-summary > div:last-child {
		border-bottom: 0;
	}

	.nch-profit-net {
		grid-column: auto;
	}

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

	.nch-journal-column-head {
		display: none;
	}

	.nch-journal-line select,
	.nch-journal-line input[name='remark'] {
		grid-column: 1 / -1;
	}

	.nch-report-chart-grid,
	.nch-chart-row {
		grid-template-columns: 1fr;
	}

	.nch-chart-label strong {
		white-space: normal;
	}

	.nch-user-admin-layout,
	.nch-form-grid.is-two-column {
		grid-template-columns: 1fr;
	}
}

/* Operational intelligence workspaces */
.nch-ops-intelligence {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 12px;
}

.nch-ops-intelligence-grid {
	display: grid;
	grid-template-columns: minmax(360px, 1.25fr) repeat(2, minmax(250px, .8fr));
	align-items: start;
	gap: 12px;
}

.nch-customer-intelligence-page .nch-kpi-grid,
.nch-debtor-intelligence-page .nch-kpi-grid {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.nch-ops-intelligence-grid > .nch-panel {
	min-width: 0;
	padding: 18px;
}

.nch-ops-intelligence-grid.is-inventory {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.nch-ops-intelligence-grid .is-wide {
	grid-column: 1 / -1;
}

.nch-ops-intelligence h3 {
	margin: 0;
	font-size: 16px;
}

.nch-inline-metrics {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

.nch-inline-metrics span {
	padding: 6px 8px;
	border: 1px solid var(--nch-line);
	border-radius: 6px;
	background: #f8fafc;
	color: var(--nch-muted);
	font-size: 10px;
	font-weight: 700;
}

.nch-inline-metrics strong {
	margin-left: 3px;
	color: var(--nch-ink);
}

.nch-ops-column-chart {
	display: flex;
	min-height: 225px;
	align-items: stretch;
	gap: 10px;
	padding-top: 12px;
	border-bottom: 1px solid var(--nch-line);
}

.nch-ops-column {
	display: grid;
	min-width: 42px;
	flex: 1;
	grid-template-rows: 20px 165px 24px;
	gap: 5px;
	text-align: center;
}

.nch-ops-column-value {
	overflow: hidden;
	color: var(--nch-muted);
	font-size: 9px;
	font-weight: 800;
	text-overflow: ellipsis;
}

.nch-ops-column-track {
	display: flex;
	height: 165px;
	align-items: end;
	justify-content: center;
	gap: 4px;
	padding: 0 8px;
	border-bottom: 1px solid #cfd6e1;
	background: linear-gradient(to top, transparent 24%, #f2f4f7 25%, transparent 26%, transparent 49%, #f2f4f7 50%, transparent 51%, transparent 74%, #f2f4f7 75%, transparent 76%);
}

.nch-ops-column-track i {
	display: block;
	width: min(28px, 70%);
	min-height: 2px;
	border-radius: 4px 4px 0 0;
	background: #175cd3;
}

.nch-ops-column-track i.is-collected {
	background: #16803c;
}

.nch-ops-column-chart.is-paired .nch-ops-column-track i {
	width: min(18px, 42%);
}

.nch-ops-column > strong {
	font-size: 10px;
}

.nch-chart-legend i.is-collected {
	background: #16803c;
}

.nch-ops-distribution,
.nch-ops-ranking-list,
.nch-ops-action-list {
	display: grid;
	gap: 1px;
}

.nch-ops-distribution-row {
	display: grid;
	grid-template-columns: minmax(78px, .8fr) minmax(80px, 1fr) 42px;
	align-items: center;
	gap: 10px;
	min-height: 54px;
	border-bottom: 1px solid var(--nch-line);
}

.nch-ops-distribution-row:last-child {
	border-bottom: 0;
}

.nch-ops-distribution-row span strong,
.nch-ops-distribution-row span small {
	display: block;
}

.nch-ops-distribution-row span strong {
	font-size: 11px;
}

.nch-ops-distribution-row span small {
	margin-top: 3px;
	color: var(--nch-muted);
	font-size: 9px;
}

.nch-ops-distribution-row > div,
.nch-ops-ranking-list > div > div,
.nch-ops-ranking-list > a > div {
	height: 8px;
	overflow: hidden;
	border-radius: 3px;
	background: #eef2f6;
}

.nch-ops-distribution-row > div i,
.nch-ops-ranking-list > div > div i,
.nch-ops-ranking-list > a > div i {
	display: block;
	height: 100%;
	min-width: 2px;
	border-radius: inherit;
	background: #175cd3;
}

.nch-ops-distribution-row > b {
	font-size: 10px;
	text-align: right;
}

.nch-ops-distribution-row i.is-approval-approved,
.nch-ops-distribution-row i.is-stock-healthy { background: #16803c; }
.nch-ops-distribution-row i.is-approval-pending,
.nch-ops-distribution-row i.is-stock-low-stock { background: #f79009; }
.nch-ops-distribution-row i.is-approval-rejected,
.nch-ops-distribution-row i.is-stock-no-stock { background: #d92d20; }

.nch-ops-footnote {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 6px;
	margin-top: 12px;
	padding-top: 11px;
	border-top: 1px solid var(--nch-line);
}

.nch-ops-footnote span,
.nch-ops-footnote strong {
	display: block;
}

.nch-ops-footnote span {
	color: var(--nch-muted);
	font-size: 9px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-ops-footnote strong {
	margin-top: 4px;
	color: var(--nch-ink);
	font-size: 13px;
}

.nch-ops-action-list > button,
.nch-ops-action-list > a,
.nch-ops-ranking-list > div,
.nch-ops-ranking-list > a {
	display: grid;
	width: 100%;
	min-width: 0;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 10px;
	min-height: 54px;
	padding: 8px 0;
	border: 0;
	border-bottom: 1px solid var(--nch-line);
	background: transparent;
	color: var(--nch-ink);
	font: inherit;
	text-align: left;
}

.nch-ops-action-list > button,
.nch-ops-action-list > a,
.nch-ops-ranking-list > a {
	cursor: pointer;
}

.nch-ops-action-list > button:hover,
.nch-ops-action-list > a:hover,
.nch-ops-ranking-list > a:hover {
	background: #f8fafc;
}

.nch-ops-action-list > :last-child,
.nch-ops-ranking-list > :last-child {
	border-bottom: 0;
}

.nch-ops-action-list span,
.nch-ops-ranking-list span {
	min-width: 0;
}

.nch-ops-action-list span strong,
.nch-ops-action-list span small,
.nch-ops-ranking-list span strong,
.nch-ops-ranking-list span small {
	display: block;
}

.nch-ops-action-list span strong,
.nch-ops-ranking-list span strong {
	overflow: hidden;
	font-size: 11px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.nch-ops-action-list span small,
.nch-ops-ranking-list span small {
	margin-top: 3px;
	overflow: hidden;
	color: var(--nch-muted);
	font-size: 9px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.nch-ops-action-list > button > b,
.nch-ops-action-list > a > b,
.nch-ops-ranking-list > div > b,
.nch-ops-ranking-list > a > b {
	font-size: 11px;
	text-align: right;
	white-space: nowrap;
}

.nch-ops-ranking-list > div,
.nch-ops-ranking-list > a {
	grid-template-columns: minmax(95px, 1fr) minmax(70px, .7fr) auto;
}

.nch-ops-ranking-list > div > div i,
.nch-ops-ranking-list > a > div i { background: #0e9384; }
.nch-ops-ranking-list > a > div i.is-value { background: #7f56d9; }

.nch-ops-ranking-list.is-two-column {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 24px;
}

.nch-aging-stack {
	display: flex;
	height: 24px;
	margin: 16px 0 12px;
	overflow: hidden;
	border-radius: 5px;
	background: #eef2f6;
}

.nch-aging-stack i {
	display: block;
	height: 100%;
	min-width: 0;
}

.nch-aging-stack .is-aging-1,
.nch-aging-legend .is-aging-1 { background: #16803c; }
.nch-aging-stack .is-aging-2,
.nch-aging-legend .is-aging-2 { background: #fdb022; }
.nch-aging-stack .is-aging-3,
.nch-aging-legend .is-aging-3 { background: #f79009; }
.nch-aging-stack .is-aging-4,
.nch-aging-legend .is-aging-4 { background: #e04f16; }
.nch-aging-stack .is-aging-5,
.nch-aging-legend .is-aging-5 { background: #d92d20; }

.nch-aging-legend {
	display: grid;
	gap: 2px;
}

.nch-aging-legend > div {
	display: grid;
	grid-template-columns: 9px minmax(45px, 1fr) auto 38px;
	align-items: center;
	gap: 7px;
	min-height: 27px;
	font-size: 10px;
}

.nch-aging-legend > div > i {
	width: 9px;
	height: 9px;
	border-radius: 2px;
}

.nch-aging-legend small {
	color: var(--nch-muted);
	text-align: right;
}

.nch-exposure-note {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 8px;
	margin-top: 12px;
	padding-top: 11px;
	border-top: 1px solid var(--nch-line);
	font-size: 10px;
}

.nch-exposure-note span { color: var(--nch-muted); font-weight: 800; text-transform: uppercase; }
.nch-exposure-note strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.nch-exposure-note b { white-space: nowrap; }

@media (max-width: 1280px) {
	.nch-ops-intelligence-grid,
	.nch-ops-intelligence-grid.is-inventory {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.nch-ops-trend-panel,
	.nch-ops-intelligence-grid .is-wide { grid-column: 1 / -1; }
}

@media (max-width: 1180px) {
	.nch-customer-intelligence-page .nch-kpi-grid,
	.nch-debtor-intelligence-page .nch-kpi-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.nch-ops-intelligence-grid,
	.nch-ops-intelligence-grid.is-inventory { grid-template-columns: 1fr; }
	.nch-ops-trend-panel,
	.nch-ops-intelligence-grid .is-wide { grid-column: auto; }
	.nch-ops-intelligence-grid > .nch-panel { padding: 14px; }
	.nch-ops-column-chart { min-width: 410px; }
	.nch-ops-trend-panel { overflow-x: auto; }
	.nch-ops-trend-panel > .nch-section-heading,
	.nch-ops-trend-panel > .nch-ops-footnote { position: sticky; left: 0; min-width: calc(100vw - 76px); }
	.nch-ops-ranking-list.is-two-column { grid-template-columns: 1fr; }
	.nch-inline-metrics { justify-content: flex-start; }
}

/* Home is an operational work queue; analytics remain in Executive Intelligence. */
.nch-home-main {
	gap: 18px;
}

.nch-home-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

.nch-home-welcome h1,
.nch-home-welcome p {
	margin: 0;
}

.nch-home-welcome h1 {
	margin-top: 4px;
	font-size: 28px;
}

.nch-home-welcome > p:last-child {
	margin-top: 6px;
	color: var(--nch-muted);
	font-size: 13px;
}

.nch-home-controls {
	display: flex;
	min-width: 0;
	align-items: stretch;
	justify-content: flex-end;
	gap: 8px;
}

.nch-home-location {
	display: grid;
	width: 210px;
	min-width: 0;
	gap: 4px;
	padding: 8px 10px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fff;
}

.nch-home-location > span {
	color: var(--nch-muted);
	font-size: 9px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-home-location select {
	width: 100%;
	min-width: 0;
	border: 0;
	background: transparent;
	color: var(--nch-ink);
	font: inherit;
	font-size: 12px;
	font-weight: 700;
	outline: 0;
}

.nch-home-user {
	display: flex;
	min-width: 145px;
	flex-direction: column;
	justify-content: center;
	padding: 8px 12px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fff;
}

.nch-home-user strong,
.nch-home-user span {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.nch-home-user strong { font-size: 12px; }
.nch-home-user span { margin-top: 3px; color: var(--nch-muted); font-size: 10px; }

.nch-approval-alert-control {
	display: grid;
	min-width: 190px;
	grid-template-columns: 26px minmax(0, 1fr) auto;
	align-items: center;
	gap: 8px;
	padding: 8px 10px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fff;
	color: var(--nch-ink);
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.nch-approval-alert-control:hover {
	border-color: #98a2b3;
	background: #f8fafc;
}

.nch-approval-alert-control[data-state="enabled"] { border-color: #75c69b; background: #f0fdf4; }
.nch-approval-alert-control[data-state="blocked"],
.nch-approval-alert-control[data-state="error"] { border-color: #f3b7b2; background: #fff7f6; }

.nch-notification-mark {
	position: relative;
	display: block;
	width: 24px;
	height: 24px;
	border: 1px solid #98a2b3;
	border-radius: 6px;
	background: #f2f4f7;
}

.nch-notification-mark::before {
	position: absolute;
	top: 6px;
	left: 7px;
	width: 8px;
	height: 8px;
	border: 2px solid #475467;
	border-radius: 8px 8px 3px 3px;
	content: "";
}

.nch-notification-mark::after {
	position: absolute;
	top: 4px;
	right: 4px;
	width: 6px;
	height: 6px;
	border: 2px solid #fff;
	border-radius: 50%;
	background: #d92d20;
	content: "";
}

.nch-approval-alert-control > span:nth-child(2) strong,
.nch-approval-alert-control > span:nth-child(2) small {
	display: block;
}

.nch-approval-alert-control > span:nth-child(2) strong { font-size: 11px; }
.nch-approval-alert-control > span:nth-child(2) small { margin-top: 2px; color: var(--nch-muted); font-size: 9px; }

.nch-approval-alert-control > b,
.nch-home-count-badge {
	display: inline-flex;
	min-width: 23px;
	height: 23px;
	align-items: center;
	justify-content: center;
	padding: 0 6px;
	border-radius: 12px;
	background: #d92d20;
	color: #fff;
	font-size: 10px;
}

.nch-home-counter-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}

.nch-home-counter {
	position: relative;
	display: grid;
	min-width: 0;
	min-height: 112px;
	align-content: center;
	gap: 5px;
	overflow: hidden;
	padding: 15px 16px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fff;
	box-shadow: var(--nch-shadow);
}

.nch-home-counter::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 4px;
	background: #667085;
	content: "";
}

.nch-home-counter.is-approval::before { background: #7f56d9; }
.nch-home-counter.is-sales::before { background: #175cd3; }
.nch-home-counter.is-inventory::before { background: #f79009; }
.nch-home-counter.is-finance::before { background: #d92d20; }
.nch-home-counter.is-transfer::before { background: #0e9384; }

.nch-home-counter span {
	color: var(--nch-muted);
	font-size: 10px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-home-counter strong {
	font-size: 24px;
}

.nch-home-counter small {
	overflow: hidden;
	color: var(--nch-muted);
	font-size: 10px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.nch-home-workspace {
	display: grid;
	grid-template-columns: minmax(0, 1.55fr) minmax(290px, .75fr);
	align-items: start;
	gap: 12px;
}

.nch-home-workspace.without-approvals {
	grid-template-columns: minmax(290px, 520px);
}

.nch-home-focus-column {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 12px;
}

.nch-home-approval-panel,
.nch-home-start-panel,
.nch-home-attention-panel {
	min-width: 0;
	padding: 18px;
}

.nch-home-approval-panel h2,
.nch-home-start-panel h2,
.nch-home-attention-panel h2 {
	font-size: 18px;
}

.nch-home-approval-list,
.nch-home-action-list,
.nch-home-attention-list {
	display: grid;
}

.nch-home-approval-list > a {
	display: grid;
	grid-template-columns: 92px minmax(0, 1fr) minmax(110px, .34fr);
	align-items: center;
	gap: 12px;
	min-height: 62px;
	padding: 9px 0;
	border-bottom: 1px solid var(--nch-line);
	color: var(--nch-ink);
}

.nch-home-approval-list > a:last-child,
.nch-home-action-list > a:last-child,
.nch-home-attention-list > :last-child {
	border-bottom: 0;
}

.nch-home-approval-list > a:hover,
.nch-home-action-list > a:hover,
.nch-home-attention-list > a:hover {
	background: #f8fafc;
}

.nch-home-type {
	display: inline-flex;
	width: fit-content;
	max-width: 92px;
	min-height: 24px;
	align-items: center;
	padding: 4px 7px;
	border-radius: 5px;
	background: #eef2f6;
	color: #344054;
	font-size: 9px;
	font-weight: 800;
}

.nch-home-type.is-customer,
.nch-home-type.is-sales-order { background: #eaf1fc; color: #1849a9; }
.nch-home-type.is-stock-transfer,
.nch-home-type.is-purchase { background: #edf9f4; color: #067647; }
.nch-home-type.is-journal,
.nch-home-type.is-price { background: #fff4e5; color: #b54708; }
.nch-home-type.is-salary-advance { background: #f4f0ff; color: #6941c6; }

.nch-home-row-copy,
.nch-home-row-meta {
	min-width: 0;
}

.nch-home-row-copy strong,
.nch-home-row-copy small,
.nch-home-row-meta strong,
.nch-home-row-meta small {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.nch-home-row-copy strong { font-size: 12px; }
.nch-home-row-copy small { margin-top: 4px; color: var(--nch-muted); font-size: 10px; }
.nch-home-row-meta { text-align: right; }
.nch-home-row-meta strong { font-size: 10px; }
.nch-home-row-meta small { margin-top: 4px; color: var(--nch-muted); font-size: 9px; }

.nch-home-action-list > a {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 18px;
	align-items: center;
	gap: 10px;
	min-height: 68px;
	padding: 10px 0;
	border-bottom: 1px solid var(--nch-line);
	color: var(--nch-ink);
}

.nch-home-action-list small,
.nch-home-action-list strong,
.nch-home-action-list p {
	display: block;
	margin: 0;
}

.nch-home-action-list small { color: #175cd3; font-size: 9px; font-weight: 800; text-transform: uppercase; }
.nch-home-action-list strong { margin-top: 3px; font-size: 12px; }
.nch-home-action-list p { margin-top: 4px; color: var(--nch-muted); font-size: 9px; line-height: 1.35; }
.nch-home-action-list > a > b { color: #98a2b3; font-size: 22px; text-align: right; }

.nch-home-attention-list > a,
.nch-home-attention-list > div {
	display: grid;
	grid-template-columns: 92px minmax(0, 1fr) auto;
	align-items: center;
	gap: 12px;
	min-height: 58px;
	padding: 9px 0;
	border-bottom: 1px solid var(--nch-line);
	color: var(--nch-ink);
}

.nch-home-attention-kind {
	color: var(--nch-muted);
	font-size: 9px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-home-attention-list span:nth-child(2) strong,
.nch-home-attention-list span:nth-child(2) small {
	display: block;
}

.nch-home-attention-list span:nth-child(2) strong { font-size: 12px; }
.nch-home-attention-list span:nth-child(2) small { margin-top: 3px; color: var(--nch-muted); font-size: 10px; }
.nch-home-attention-list > a > b { color: #175cd3; font-size: 10px; }
.nch-home-attention-list .is-warning .nch-home-attention-kind { color: #b54708; }
.nch-home-attention-list .is-danger .nch-home-attention-kind { color: #b42318; }
.nch-home-attention-list .is-ok .nch-home-attention-kind { color: #067647; }

.nch-home-clear-state {
	display: grid;
	min-height: 100px;
	place-content: center;
	gap: 5px;
	color: var(--nch-muted);
	text-align: center;
}

.nch-home-clear-state strong { color: var(--nch-ink); font-size: 13px; }
.nch-home-clear-state span { font-size: 10px; }

@media (max-width: 1180px) {
	.nch-home-header { align-items: flex-start; }
	.nch-home-controls { display: grid; grid-template-columns: repeat(2, minmax(180px, 1fr)); }
	.nch-home-user { display: none; }
	.nch-home-location { width: auto; }
	.nch-home-workspace { grid-template-columns: 1fr; }
	.nch-home-start-panel .nch-home-action-list { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
}

@media (max-width: 760px) {
	.nch-home-header { flex-direction: column; }
	.nch-home-welcome h1 { font-size: 24px; }
	.nch-home-controls { width: 100%; grid-template-columns: 1fr; }
	.nch-approval-alert-control,
	.nch-home-location { width: 100%; }
	.nch-home-counter-grid { display: flex; overflow-x: auto; padding-bottom: 3px; scroll-snap-type: x proximity; }
	.nch-home-counter { min-width: 176px; scroll-snap-align: start; }
	.nch-home-approval-panel,
	.nch-home-start-panel,
	.nch-home-attention-panel { padding: 14px; }
	.nch-home-approval-list > a { grid-template-columns: 82px minmax(0, 1fr); }
	.nch-home-row-meta { display: none; }
	.nch-home-start-panel .nch-home-action-list { grid-template-columns: 1fr; }
	.nch-home-attention-list > a,
	.nch-home-attention-list > div { grid-template-columns: 72px minmax(0, 1fr); }
	.nch-home-attention-list > a > b { display: none; }
}

@media (max-width: 520px) {
	h1 {
		font-size: 24px;
	}

	h2 {
		font-size: 19px;
	}

	.nch-kpi-grid,
	.nch-module-grid,
	.nch-location-grid {
		grid-template-columns: 1fr;
	}

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

	.nch-journal-line input,
	.nch-journal-line select {
		grid-column: auto;
	}

	.nch-journal-totals span:last-child {
		width: 100%;
		margin-left: 0;
	}
}
.nch-statement-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.nch-statement-single { max-width: 900px; margin: 0 auto; border: 1px solid var(--nch-border); background: #fff; }
.nch-statement-opening, .nch-statement-line, .nch-statement-total, .nch-statement-closing { display: flex; justify-content: space-between; gap: 24px; padding: 16px 20px; border-bottom: 1px solid var(--nch-border); }
.nch-statement-line strong, .nch-statement-opening strong, .nch-statement-total strong, .nch-statement-closing strong { font-variant-numeric: tabular-nums; }
.nch-statement-opening { background: #f7f9fc; }
.nch-statement-total { font-weight: 700; border-top: 2px solid #263247; }
.nch-statement-closing { border: 0; background: #e9f7ef; font-size: 1.05rem; font-weight: 800; }
@media (max-width: 760px) { .nch-statement-grid { grid-template-columns: 1fr; } .nch-statement-opening, .nch-statement-line, .nch-statement-total, .nch-statement-closing { padding: 14px; } }
.nch-statement-dashboard { display: flex; width: 100%; flex-direction: column; gap: 18px; }
.nch-statement-summary {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	width: 100%;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: var(--nch-surface);
	overflow: hidden;
}
.nch-statement-summary > div { min-width: 0; padding: 18px 20px; border-right: 1px solid var(--nch-line); }
.nch-statement-summary > div:last-child { border-right: 0; }
.nch-statement-summary > div.is-closing { background: #eef7f1; }
.nch-statement-summary.is-four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.nch-statement-summary span,
.nch-statement-summary strong,
.nch-statement-summary small { display: block; }
.nch-statement-summary span { color: var(--nch-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.nch-statement-summary strong { margin-top: 8px; font-size: 24px; font-variant-numeric: tabular-nums; line-height: 1.1; }
.nch-statement-summary small { margin-top: 6px; color: var(--nch-muted); font-size: 12px; }
.nch-statement-summary .is-positive,
.nch-statement-breakdown .is-positive { color: #137a3c; }
.nch-statement-summary .is-negative,
.nch-statement-breakdown .is-negative { color: #b42318; }
.nch-statement-breakdown { width: 100%; border: 1px solid var(--nch-line); border-radius: 8px; background: var(--nch-surface); overflow: hidden; }
.nch-statement-breakdown > header,
.nch-statement-breakdown-rows > div,
.nch-statement-breakdown > footer { display: grid; grid-template-columns: minmax(0, 1fr) minmax(130px, .28fr); align-items: center; gap: 24px; }
.nch-statement-breakdown > header { padding: 16px 20px; border-bottom: 1px solid var(--nch-line); background: #f8fafc; }
.nch-statement-breakdown > header > strong { color: var(--nch-muted); font-size: 11px; text-align: right; text-transform: uppercase; }
.nch-statement-breakdown-rows > div { min-height: 54px; padding: 13px 20px; border-bottom: 1px solid var(--nch-line); }
.nch-statement-breakdown-rows > div:last-child { border-bottom: 0; }
.nch-statement-breakdown-rows strong,
.nch-statement-breakdown > footer strong { text-align: right; font-variant-numeric: tabular-nums; }
.nch-statement-breakdown > footer { padding: 16px 20px; border-top: 2px solid #344054; background: #f8fafc; font-weight: 800; }
.nch-statement-filter {
	display: grid;
	grid-template-columns: repeat(2, minmax(220px, 1fr)) auto;
	align-items: end;
	gap: 12px;
	padding: 14px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: var(--nch-surface);
}
.nch-statement-filter label { display: grid; gap: 6px; min-width: 0; }
.nch-statement-filter label > span { color: var(--nch-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.nch-statement-filter select { width: 100%; height: 40px; padding: 0 12px; border: 1px solid var(--nch-line); border-radius: 8px; background: #fff; color: var(--nch-ink); font: inherit; font-size: 14px; }
.nch-statement-filter .nch-button { height: 40px; }
.nch-statement-comparison {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: var(--nch-line);
	overflow: hidden;
}
.nch-statement-comparison > div { min-width: 0; padding: 13px 16px; background: #f8fafc; }
.nch-statement-comparison span,
.nch-statement-comparison strong { display: block; }
.nch-statement-comparison span { color: var(--nch-muted); font-size: 10px; font-weight: 800; text-transform: uppercase; }
.nch-statement-comparison strong { margin-top: 5px; overflow-wrap: anywhere; font-size: 13px; font-variant-numeric: tabular-nums; }
.nch-statement-comparison .is-positive,
.nch-detailed-statement .is-positive,
.nch-equity-components .is-positive,
.nch-inline-details .is-positive { color: #137a3c; }
.nch-statement-comparison .is-negative,
.nch-detailed-statement .is-negative,
.nch-equity-components .is-negative,
.nch-inline-details .is-negative { color: #b42318; }
.nch-detailed-statement,
.nch-equity-components { width: 100%; border: 1px solid var(--nch-line); border-radius: 8px; background: var(--nch-surface); overflow: hidden; }
.nch-detailed-statement > header,
.nch-equity-components > header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 20px; border-bottom: 1px solid var(--nch-line); background: #f8fafc; }
.nch-statement-columns { display: grid; grid-template-columns: repeat(3, minmax(88px, 1fr)); gap: 12px; min-width: 330px; color: var(--nch-muted); font-size: 10px; font-weight: 800; text-align: right; text-transform: uppercase; }
.nch-statement-columns.is-single { grid-template-columns: minmax(100px, 1fr); min-width: 140px; }
.nch-statement-activity { border-bottom: 1px solid var(--nch-line); }
.nch-statement-activity:last-of-type { border-bottom: 0; }
.nch-statement-activity > summary {
	display: grid;
	grid-template-columns: minmax(240px, 1fr) repeat(3, minmax(88px, .24fr));
	align-items: center;
	gap: 12px;
	min-height: 62px;
	padding: 12px 20px;
	cursor: pointer;
	list-style: none;
}
.nch-statement-activity > summary::-webkit-details-marker { display: none; }
.nch-statement-activity > summary:hover { background: #fbfcfe; }
.nch-statement-activity > summary > span:first-child { min-width: 0; }
.nch-statement-activity > summary > span:first-child::before { content: "+"; display: inline-grid; width: 22px; height: 22px; margin-right: 10px; place-items: center; border: 1px solid var(--nch-line); border-radius: 50%; color: var(--nch-muted); font-weight: 800; }
.nch-statement-activity[open] > summary > span:first-child::before { content: "-"; }
.nch-statement-activity > summary span strong,
.nch-statement-activity > summary span small { display: block; }
.nch-statement-activity > summary span strong { display: inline; }
.nch-statement-activity > summary span small { margin: 5px 0 0 34px; color: var(--nch-muted); font-size: 11px; }
.nch-statement-activity > summary > strong { text-align: right; font-variant-numeric: tabular-nums; }
.nch-detailed-statement .nch-statement-columns.is-single + * { min-width: 0; }
.nch-detailed-statement .nch-statement-columns.is-single { margin-left: auto; }
.nch-detailed-statement .nch-statement-columns.is-single span { text-align: right; }
.nch-detailed-statement .nch-statement-activity:has(summary > span + strong:last-child) > summary { grid-template-columns: minmax(240px, 1fr) minmax(100px, .24fr); }
.nch-statement-detail { padding: 18px 20px 20px; border-top: 1px solid var(--nch-line); background: #fbfcfe; }
.nch-statement-detail h4 { margin: 0 0 9px; font-size: 12px; text-transform: uppercase; }
.nch-statement-detail h4:not(:first-child) { margin-top: 18px; }
.nch-compact-rows { border: 1px solid var(--nch-line); border-radius: 8px; background: #fff; overflow: hidden; }
.nch-compact-rows > div { display: flex; justify-content: space-between; gap: 20px; padding: 10px 12px; border-bottom: 1px solid var(--nch-line); }
.nch-compact-rows > div:last-child { border-bottom: 0; }
.nch-compact-rows > p { margin: 0; padding: 12px; color: var(--nch-muted); }
.nch-detailed-statement > footer {
	display: grid;
	grid-template-columns: minmax(240px, 1fr) repeat(3, minmax(88px, .24fr));
	align-items: center;
	gap: 12px;
	padding: 16px 20px;
	border-top: 2px solid #344054;
	background: #f8fafc;
	font-weight: 800;
}
.nch-detailed-statement > footer > strong { text-align: right; }
.nch-detailed-statement > footer > strong:only-of-type { grid-column: -2 / -1; }
.nch-table.is-compact th,
.nch-table.is-compact td { padding-top: 9px; padding-bottom: 9px; }
.nch-equity-components .nch-table-wrap { border: 0; border-radius: 0; }
.nch-equity-components .nch-table tfoot th { border-top: 2px solid #344054; background: #f8fafc; }
.nch-inline-details { position: relative; }
.nch-inline-details > summary { color: var(--nch-blue); font-size: 12px; font-weight: 800; cursor: pointer; white-space: nowrap; }
.nch-inline-details > div { min-width: 320px; margin-top: 8px; }
.nch-inline-details p { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 12px; margin: 0; padding: 8px 0; border-bottom: 1px solid var(--nch-line); }
.nch-inline-details p:last-child { border-bottom: 0; }
.nch-inline-details p span { grid-column: 1 / -1; color: var(--nch-muted); font-size: 11px; }
.nch-inline-details p em { grid-column: 2; grid-row: 1; font-style: normal; font-weight: 800; }
@media (max-width: 760px) {
	.nch-statement-summary { grid-template-columns: 1fr; }
	.nch-statement-summary.is-four { grid-template-columns: 1fr; }
	.nch-statement-summary > div { border-right: 0; border-bottom: 1px solid var(--nch-line); }
	.nch-statement-summary > div:last-child { border-bottom: 0; }
	.nch-statement-breakdown > header,
	.nch-statement-breakdown-rows > div,
	.nch-statement-breakdown > footer { grid-template-columns: minmax(0, 1fr) minmax(92px, .4fr); gap: 12px; }
	.nch-statement-breakdown > header,
	.nch-statement-breakdown-rows > div,
	.nch-statement-breakdown > footer { padding-left: 14px; padding-right: 14px; }
	.nch-statement-filter { grid-template-columns: 1fr; }
	.nch-statement-filter .nch-button { width: 100%; }
	.nch-statement-comparison { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.nch-detailed-statement > header,
	.nch-equity-components > header { align-items: flex-start; flex-direction: column; padding: 14px; }
	.nch-statement-columns { width: 100%; min-width: 0; grid-template-columns: repeat(3, minmax(70px, 1fr)); }
	.nch-statement-activity > summary { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 12px 14px; }
	.nch-statement-activity > summary > span:first-child { grid-column: 1 / -1; }
	.nch-statement-activity > summary > strong { text-align: center; }
	.nch-detailed-statement .nch-statement-activity:has(summary > span + strong:last-child) > summary { grid-template-columns: 1fr; }
	.nch-detailed-statement .nch-statement-activity:has(summary > span + strong:last-child) > summary > strong { text-align: right; }
	.nch-statement-activity > summary span small { margin-left: 0; }
	.nch-statement-detail { padding: 14px; }
	.nch-detailed-statement > footer { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 14px; }
	.nch-detailed-statement > footer > span:first-child { grid-column: 1 / -1; }
	.nch-detailed-statement > footer > strong { text-align: center; }
	.nch-inline-details > div { min-width: 240px; }
}
.nch-budget-line { display: grid; grid-template-columns: minmax(0, 1fr) minmax(140px, .35fr) 42px; gap: 10px; margin-bottom: 10px; }
@media (max-width: 640px) { .nch-budget-line { grid-template-columns: 1fr 1fr 42px; } }
.nch-branch-code-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 12px; margin-top: 12px; }

/* Focused cash and banking workspaces */
.nch-controls-page [data-control-panel="banking"] { display: none !important; }
.nch-money-page { gap: 18px; }
.nch-money-header { align-items: center; }
.nch-money-header .nch-action-row { justify-content: flex-end; }
.nch-money-page [data-money-panel] {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.nch-page-subtitle { margin: 6px 0 0; color: var(--nch-muted); font-size: 14px; }
.nch-money-filter {
	display: grid;
	grid-template-columns: minmax(160px, .7fr) minmax(160px, .7fr) minmax(240px, 1.4fr) auto;
	align-items: end;
	gap: 12px;
	padding: 14px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: var(--nch-surface);
}
.nch-money-filter label { display: grid; gap: 6px; min-width: 0; }
.nch-money-filter label > span { color: var(--nch-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.nch-money-filter input,
.nch-money-filter select,
.nch-inline-search { width: 100%; height: 40px; padding: 0 12px; border: 1px solid var(--nch-line); border-radius: 8px; background: #fff; color: var(--nch-ink); font: inherit; font-size: 14px; }
.nch-money-filter .nch-button { min-width: 86px; height: 40px; }
.nch-money-summary,
.nch-bank-account-strip {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: var(--nch-surface);
	overflow: hidden;
}
.nch-money-summary.is-three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.nch-money-summary > div,
.nch-bank-account-strip > div { min-width: 0; padding: 16px 18px; border-right: 1px solid var(--nch-line); }
.nch-money-summary > div:last-child,
.nch-bank-account-strip > div:last-child { border-right: 0; }
.nch-money-summary span,
.nch-bank-account-strip span { display: block; color: var(--nch-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.nch-money-summary strong,
.nch-bank-account-strip strong { display: block; margin-top: 7px; overflow-wrap: anywhere; font-size: 22px; font-variant-numeric: tabular-nums; }
.nch-money-summary small,
.nch-bank-account-strip small { display: block; margin-top: 5px; color: var(--nch-muted); font-size: 12px; }
.nch-money-summary .is-closing { background: #eef7f1; }
.nch-money-summary strong.is-positive,
.nch-table .is-positive { color: #137a3c; }
.nch-money-summary strong.is-negative,
.nch-table .is-negative { color: #b42318; }
.nch-money-ledger .nch-section-heading { align-items: center; }
.nch-money-ledger .nch-action-row { flex-wrap: nowrap; }
.nch-inline-search { width: min(260px, 24vw); }
.nch-money-pending { border-left: 3px solid #e3a008; }
.nch-money-tabs { flex-wrap: nowrap; overflow-x: auto; }
.nch-money-tabs button { flex: 0 0 auto; }
.nch-tab-count { display: inline-grid; min-width: 20px; height: 20px; margin-left: 7px; place-items: center; border-radius: 10px; background: #edf2f8; color: #344054; font-size: 11px; }
.nch-bank-account-strip { grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); }
.nch-bank-account-strip > div { min-height: 98px; }
.nch-bank-account-list { display: grid; }
.nch-bank-account-list article { display: grid; grid-template-columns: minmax(260px, .8fr) minmax(420px, 1.2fr); gap: 24px; padding: 18px 4px; border-bottom: 1px solid var(--nch-line); }
.nch-bank-account-list article:last-child { border-bottom: 0; }
.nch-bank-account-list article h3 { margin-top: 8px; }
.nch-bank-account-list article p { margin: 5px 0 0; color: var(--nch-muted); font-size: 13px; }
.nch-bank-account-list dl { display: grid; grid-template-columns: 1.4fr .7fr .7fr; gap: 16px; margin: 0; }
.nch-bank-account-list dl > div { min-width: 0; }
.nch-bank-account-list dt { color: var(--nch-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.nch-bank-account-list dd { margin: 7px 0 0; overflow-wrap: anywhere; font-size: 14px; font-weight: 700; }
.nch-empty-state { margin: 0; padding: 28px 0; color: var(--nch-muted); text-align: center; }
.nch-form label.nch-check-row {
	display: inline-flex;
	width: fit-content;
	min-height: 40px;
	margin-top: 14px;
	flex-direction: row;
	align-items: center;
	gap: 9px;
	padding: 9px 11px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #f8fafc;
}
.nch-form label.nch-check-row > span { color: var(--nch-ink); font-size: 13px; font-weight: 700; text-transform: none; }
.nch-form label.nch-check-row > input { flex: 0 0 18px; margin: 0; }
.nch-cheque-register { min-width: 0; }
.nch-cheque-register .nch-panel-note { max-width: 720px; margin: 5px 0 0; color: var(--nch-muted); font-size: 13px; }
.nch-cheque-filters {
	display: grid;
	grid-template-columns: minmax(220px, 1.4fr) repeat(3, minmax(150px, .7fr));
	gap: 12px;
	margin-top: 16px;
}
.nch-cheque-result-row { display: flex; justify-content: flex-end; padding-top: 10px; }
.nch-cheque-table { min-width: 1120px; }
.nch-cheque-table th,
.nch-cheque-table td { vertical-align: middle; }
.nch-cheque-table th:nth-child(3),
.nch-cheque-table td:nth-child(3),
.nch-cheque-table th:nth-child(7),
.nch-cheque-table td:nth-child(7) { white-space: nowrap; }

@media (max-width: 1100px) {
	.nch-money-filter { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.nch-money-filter .nch-button { justify-self: start; }
	.nch-money-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.nch-money-summary > div:nth-child(2) { border-right: 0; }
	.nch-money-summary > div:nth-child(-n+2) { border-bottom: 1px solid var(--nch-line); }
	.nch-bank-account-list article { grid-template-columns: 1fr; }
	.nch-cheque-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
	.nch-money-header { align-items: stretch; }
	.nch-money-header .nch-action-row { justify-content: flex-start; }
	.nch-money-page [data-money-panel] { gap: 14px; }
	.nch-money-filter { grid-template-columns: 1fr; }
	.nch-money-filter .nch-button { width: 100%; }
	.nch-money-summary,
	.nch-money-summary.is-three,
	.nch-bank-account-strip { grid-template-columns: 1fr; }
	.nch-money-summary > div,
	.nch-money-summary > div:nth-child(2),
	.nch-bank-account-strip > div { border-right: 0; border-bottom: 1px solid var(--nch-line); }
	.nch-money-summary > div:last-child,
	.nch-bank-account-strip > div:last-child { border-bottom: 0; }
	.nch-money-ledger .nch-section-heading { align-items: stretch; }
	.nch-money-ledger .nch-action-row { flex-wrap: wrap; }
	.nch-inline-search { width: 100%; }
	.nch-bank-account-list dl { grid-template-columns: 1fr; }
	.nch-cheque-filters { grid-template-columns: 1fr; }
}

/* Stock transfer request, transit and destination workflow */
.nch-subtitle { margin: 6px 0 0; color: var(--nch-muted); font-size: 14px; }
.nch-transfer-progress {
	display: grid;
	grid-template-columns: auto minmax(24px, 1fr) auto minmax(24px, 1fr) auto minmax(24px, 1fr) auto minmax(24px, 1fr) auto;
	align-items: center;
	gap: 10px;
	padding: 14px 18px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: var(--nch-surface);
}
.nch-transfer-progress span { color: #344054; font-size: 12px; font-weight: 800; white-space: nowrap; }
.nch-transfer-progress i { height: 2px; background: #cbd5e1; }
.nch-transfer-progress span:nth-of-type(1),
.nch-transfer-progress span:nth-of-type(2) { color: var(--nch-blue); }
.nch-transfer-progress span:nth-of-type(3),
.nch-transfer-progress span:nth-of-type(4) { color: #a15c00; }
.nch-transfer-progress span:nth-of-type(5) { color: var(--nch-green); }
.nch-transfer-tabs {
	display: flex;
	align-items: center;
	gap: 4px;
	padding: 5px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #eef2f6;
	overflow-x: auto;
}
.nch-transfer-tabs button {
	display: inline-flex;
	min-height: 40px;
	flex: 1 0 auto;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 0 16px;
	border: 0;
	border-radius: 6px;
	background: transparent;
	color: #475467;
	font: inherit;
	font-size: 13px;
	font-weight: 800;
	cursor: pointer;
}
.nch-transfer-tabs button:hover { background: #f8fafc; color: var(--nch-ink); }
.nch-transfer-tabs button.is-active { background: #fff; color: var(--nch-blue); box-shadow: 0 1px 3px rgba(16, 24, 40, .12); }
.nch-transfer-tabs button span { display: inline-grid; min-width: 22px; height: 22px; place-items: center; border-radius: 11px; background: #e4e7ec; color: #344054; font-size: 11px; }
.nch-transfer-tabs button.is-active span { background: #e8f0ff; color: var(--nch-blue); }
.nch-transfer-kpis .nch-kpi:nth-child(2) { border-top: 3px solid var(--nch-blue); }
.nch-transfer-kpis .nch-kpi:nth-child(3) { border-top: 3px solid #d97706; }
.nch-transfer-kpis .nch-kpi:nth-child(4) { border-top: 3px solid var(--nch-green); }
.nch-receiving-quantity {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin-bottom: 18px;
}
.nch-receiving-quantity > div {
	display: flex;
	min-height: 76px;
	flex-direction: column;
	justify-content: center;
	padding: 12px 14px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #f8fafc;
}
.nch-receiving-quantity > div span { color: var(--nch-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.nch-receiving-quantity > div strong { margin-top: 7px; font-size: 20px; font-variant-numeric: tabular-nums; }
.nch-form-grid .is-full,
.nch-row-guidance.is-full { grid-column: 1 / -1; }
.nch-table .is-warning { color: #a15c00; font-weight: 800; }
.nch-status.is-negative { background: #fef3f2; color: #b42318; }

.nch-view-detail-button {
	display: inline-flex;
	width: 38px;
	min-width: 38px;
	height: 38px;
	min-height: 38px;
	align-items: center;
	justify-content: center;
	padding: 0;
	color: var(--nch-blue);
	cursor: pointer;
}

.nch-view-detail-button:hover {
	border-color: var(--nch-blue);
	background: #eef4ff;
}

.nch-view-detail-button svg {
	width: 18px;
	height: 18px;
}

.nch-finance-modal.nch-transfer-detail-modal {
	width: min(820px, calc(100vw - 32px));
}

.nch-finance-modal.nch-dispatch-modal {
	width: min(680px, calc(100vw - 32px));
}

.nch-dispatch-form-section {
	padding: 16px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #f8fafc;
}

.nch-dispatch-form-heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 16px;
}

.nch-dispatch-form-heading h3,
.nch-dispatch-form-heading p {
	margin: 0;
}

.nch-dispatch-form-heading h3 {
	margin-top: 4px;
	font-size: 16px;
}

.nch-dispatch-form-section .nch-form-grid {
	grid-template-columns: minmax(0, 1fr);
}

.nch-dispatch-form-section textarea {
	min-height: 102px;
	resize: vertical;
}

.nch-dispatch-form-section label > small {
	line-height: 1.4;
}

.nch-dispatch-guidance {
	margin: 14px 0 0;
	padding: 11px 12px;
	border-left: 3px solid #d97706;
	background: #fffaeb;
	color: #7a4d00;
	line-height: 1.45;
}

.nch-transfer-detail-modal .nch-finance-modal-form {
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
}

.nch-transfer-detail-modal .nch-finance-modal-body {
	min-height: 0;
}

.nch-transfer-detail-status {
	display: flex;
	justify-content: flex-end;
	margin-bottom: 12px;
}

.nch-transfer-detail-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #f8fafc;
	overflow: hidden;
}

.nch-transfer-detail-grid > div {
	min-width: 0;
	padding: 14px;
	border-right: 1px solid var(--nch-line);
}

.nch-transfer-detail-grid > div:last-child {
	border-right: 0;
}

.nch-transfer-detail-grid span,
.nch-transfer-detail-grid strong,
.nch-transfer-detail-grid small {
	display: block;
}

.nch-transfer-detail-grid span,
.nch-transfer-detail-section dt {
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-transfer-detail-grid strong {
	margin-top: 5px;
	overflow-wrap: anywhere;
}

.nch-transfer-detail-grid small {
	margin-top: 3px;
	color: var(--nch-muted);
	overflow-wrap: anywhere;
}

.nch-transfer-detail-section {
	display: grid;
	gap: 12px;
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px solid var(--nch-line);
}

.nch-transfer-detail-section h3,
.nch-transfer-detail-section p {
	margin: 3px 0 0;
}

.nch-transfer-detail-section dl {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin: 0;
}

.nch-transfer-detail-section dl > div {
	min-width: 0;
	padding: 12px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #ffffff;
}

.nch-transfer-detail-section dd {
	margin: 6px 0 0;
	font-weight: 700;
	overflow-wrap: anywhere;
}

@media (max-width: 760px) {
	.nch-transfer-progress { grid-template-columns: repeat(5, minmax(78px, 1fr)); overflow-x: auto; }
	.nch-transfer-progress i { display: none; }
	.nch-transfer-progress span { min-height: 34px; display: grid; place-items: center; padding: 0 10px; border: 1px solid var(--nch-line); border-radius: 6px; background: #f8fafc; }
	.nch-transfer-tabs button { min-width: 118px; }
	.nch-receiving-quantity { grid-template-columns: 1fr; }
	.nch-transfer-detail-grid,
	.nch-transfer-detail-section dl { grid-template-columns: 1fr; }
	.nch-transfer-detail-grid > div { border-right: 0; border-bottom: 1px solid var(--nch-line); }
	.nch-transfer-detail-grid > div:last-child { border-bottom: 0; }
	.nch-dispatch-form-heading { align-items: flex-start; flex-direction: column; gap: 8px; }
	.nch-dispatch-modal .nch-finance-modal-footer { align-items: stretch; flex-direction: column-reverse; }
	.nch-dispatch-modal .nch-finance-modal-footer .nch-button { width: 100%; }
	.nch-work-order-detail-head { align-items: flex-start; flex-direction: column; }
	.nch-work-order-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.nch-work-order-kpis > div:nth-child(2) { border-right: 0; }
	.nch-work-order-kpis > div:nth-child(-n + 2) { border-bottom: 1px solid var(--nch-line); }
	.nch-work-order-meta { grid-template-columns: minmax(0, 1fr); }
	.nch-approval-rule-toggle { width: 100%; }
}

@media (max-width: 520px) {
	.nch-work-order-kpis { grid-template-columns: minmax(0, 1fr); }
	.nch-work-order-kpis > div,
	.nch-work-order-kpis > div:nth-child(2) { border-right: 0; border-bottom: 1px solid var(--nch-line); }
	.nch-work-order-kpis > div:last-child { border-bottom: 0; }
	#nch-customer-form .nch-customer-submit-bar .nch-button { width: 100%; margin-left: 0; }
}

.nch-user-pin-settings {
	display: grid;
	gap: 16px;
	padding: 18px;
	border: 1px solid var(--nch-line);
	background: #f8fafc;
	border-radius: 8px;
}
.nch-user-pin-settings h2 { margin: 2px 0 0; font-size: 18px; }
.nch-user-pin-settings > small { color: var(--nch-muted); }
.nch-user-password-settings {
	display: grid;
	gap: 16px;
	padding: 18px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #ffffff;
}
.nch-user-password-heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}
.nch-user-password-heading h2 { margin: 2px 0 0; font-size: 18px; }
.nch-temporary-password-control {
	display: grid;
	grid-template-columns: minmax(220px, 1fr) auto;
	align-items: end;
	gap: 12px;
}
.nch-temporary-password-control label { display: grid; gap: 7px; }
.nch-temporary-password-control label > span {
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
}
.nch-temporary-password-control input { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.nch-user-password-settings > small { color: var(--nch-muted); }
.nch-user-password-settings .nch-status.is-positive { background: #e9f8ef; color: #157a3b; }
.nch-user-password-settings .nch-status.is-neutral { background: #eef1f5; color: var(--nch-muted); }
@media (max-width: 760px) {
	.nch-temporary-password-control { grid-template-columns: 1fr; }
	.nch-temporary-password-control .nch-action-row { justify-content: flex-start; }
}
.nch-pin-login-page { min-height: 100vh; background: #eef1f5; }
.nch-pin-login-shell {
	width: min(440px, calc(100% - 32px));
	min-height: 100vh;
	margin: 0 auto;
	display: grid;
	align-content: center;
	gap: 20px;
	padding: 32px 0;
}
.nch-pin-login-brand { display: flex; align-items: center; gap: 12px; }
.nch-pin-login-brand div { display: grid; }
.nch-pin-login-brand strong { font-size: 18px; }
.nch-pin-login-brand small { color: var(--nch-muted); }
.nch-pin-login-form { display: grid; gap: 18px; padding: 28px; }
.nch-pin-login-form header h1 { margin: 4px 0 0; font-size: 30px; }
.nch-pin-login-form .nch-button { width: 100%; }
.nch-pin-login-form .nch-text-link { text-align: center; }
.nch-sales-dispatch-lines { display: grid; gap: 10px; }
.nch-sales-dispatch-line {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 140px;
	align-items: end;
	gap: 16px;
	padding: 12px 0;
	border-bottom: 1px solid var(--nch-line);
}
.nch-sales-dispatch-line > span { display: grid; gap: 3px; }
.nch-sales-dispatch-line small { color: var(--nch-muted); }
@media (max-width: 620px) {
	.nch-sales-dispatch-line { grid-template-columns: 1fr; }
	.nch-pin-login-form { padding: 22px; }
}

/* Sales order workspace */
.nch-sales-page .nch-main {
	gap: 18px;
}

.nch-sales-sidebar-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.nch-sales-menu-button {
	display: none;
	min-height: 40px;
	padding: 0 12px;
	border: 1px solid rgba(255, 255, 255, 0.24);
	border-radius: 7px;
	background: transparent;
	color: #ffffff;
	font: inherit;
	font-size: 13px;
	font-weight: 800;
	cursor: pointer;
}

.nch-sales-page .nch-kpi-grid {
	grid-template-columns: repeat(5, minmax(130px, 1fr));
}

.nch-sales-page .nch-kpi {
	padding: 15px 16px;
}

.nch-sales-page .nch-kpi strong {
	margin-top: 7px;
	font-size: 23px;
}

.nch-sales-tabs {
	display: flex;
	min-width: 0;
	gap: 4px;
	padding: 4px;
	overflow-x: auto;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #ffffff;
	box-shadow: var(--nch-shadow);
	scrollbar-width: thin;
}

.nch-sales-tabs button {
	display: inline-flex;
	min-width: max-content;
	min-height: 40px;
	align-items: center;
	justify-content: center;
	gap: 7px;
	padding: 0 14px;
	border: 0;
	border-radius: 6px;
	background: transparent;
	color: var(--nch-muted);
	font: inherit;
	font-size: 13px;
	font-weight: 750;
	cursor: pointer;
}

.nch-sales-tabs button:hover {
	background: #f3f5f8;
	color: var(--nch-ink);
}

.nch-sales-tabs button.is-active {
	background: #1f5fbf;
	color: #ffffff;
}

.nch-sales-tabs button span {
	display: inline-grid;
	min-width: 21px;
	height: 21px;
	place-items: center;
	padding: 0 6px;
	border-radius: 11px;
	background: #e8edf4;
	color: #344054;
	font-size: 11px;
}

.nch-sales-tabs button.is-active span {
	background: rgba(255, 255, 255, 0.2);
	color: #ffffff;
}

.nch-sales-panel[hidden] {
	display: none;
}

.nch-sales-order-entry {
	display: flex;
	max-width: 1180px;
	flex-direction: column;
	gap: 20px;
}

.nch-sales-step {
	padding: 6px 9px;
	border-radius: 6px;
	background: #eef2f7;
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 800;
}

.nch-sales-order-entry .nch-sales-items {
	padding-top: 18px;
	border-top: 1px solid var(--nch-line);
}

.nch-sales-order-entry .nch-credit-strip {
	gap: 0;
	overflow: hidden;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
}

.nch-sales-order-entry .nch-credit-strip div {
	border: 0;
	border-right: 1px solid var(--nch-line);
	border-radius: 0;
}

.nch-sales-order-entry .nch-credit-strip div:last-child {
	border-right: 0;
}

.nch-sales-line {
	min-width: 0;
	border-color: #d9e0ea;
	background: #fbfcfe;
}

.nch-sales-line > * {
	min-width: 0;
}

.nch-sales-line select,
.nch-sales-line input {
	width: 100%;
}

.nch-sales-remove-line {
	width: 38px;
	height: 38px;
	padding: 0;
	color: #b42318;
	font-size: 23px;
	line-height: 1;
}

.nch-sales-notes {
	border-top: 1px solid var(--nch-line);
	border-bottom: 1px solid var(--nch-line);
}

.nch-sales-notes summary {
	padding: 13px 0;
	color: #1f5fbf;
	font-size: 13px;
	font-weight: 800;
	cursor: pointer;
}

.nch-sales-notes label {
	padding-bottom: 14px;
}

.nch-sales-search {
	width: min(320px, 100%);
}

.nch-sales-search span {
	display: block;
	margin-bottom: 5px;
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-sales-search input {
	width: 100%;
	height: 40px;
	padding: 0 12px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #ffffff;
	color: var(--nch-ink);
	font: inherit;
	font-size: 14px;
}

.nch-sales-no-results {
	margin: 14px 0 0;
	padding: 16px;
	border: 1px dashed var(--nch-line);
	border-radius: 8px;
	color: var(--nch-muted);
	text-align: center;
}

.nch-sales-page .nch-doc-links {
	min-width: 120px;
}

.nch-view-order-button {
	display: inline-flex;
	width: 38px;
	height: 38px;
	min-height: 38px;
	align-items: center;
	justify-content: center;
	padding: 0;
	color: var(--nch-blue);
	cursor: pointer;
}

.nch-view-order-button svg {
	width: 18px;
	height: 18px;
}

.nch-sales-review-modal .nch-finance-modal-form {
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
}

.nch-order-review-status {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 14px;
}

.nch-order-review-alert {
	margin: 0 0 16px;
	padding: 12px 14px;
	border: 1px solid #fecdca;
	border-radius: 8px;
	background: #fef3f2;
	color: #b42318;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.5;
}

.nch-order-review-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border-top: 1px solid var(--nch-line);
	border-bottom: 1px solid var(--nch-line);
}

.nch-order-review-grid > div {
	min-width: 0;
	padding: 14px 16px;
	border-right: 1px solid var(--nch-line);
}

.nch-order-review-grid > div:first-child {
	padding-left: 0;
}

.nch-order-review-grid > div:last-child {
	padding-right: 0;
	border-right: 0;
}

.nch-order-review-grid span,
.nch-order-review-grid strong,
.nch-order-review-grid small {
	display: block;
}

.nch-order-review-grid span {
	margin-bottom: 5px;
	color: var(--nch-muted);
	font-size: 10px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-order-review-grid strong {
	overflow-wrap: anywhere;
	font-size: 14px;
}

.nch-order-review-grid small {
	margin-top: 3px;
	color: var(--nch-muted);
}

.nch-order-review-section {
	padding-top: 20px;
}

.nch-order-review-section-heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 10px;
}

.nch-order-review-section-heading h3 {
	margin: 2px 0 0;
	font-size: 17px;
}

.nch-order-review-section-heading > small {
	color: var(--nch-muted);
	text-align: right;
}

.nch-order-review-table {
	min-width: 690px;
}

.nch-order-review-lower {
	display: grid;
	grid-template-columns: 1.3fr 1fr;
	gap: 24px;
	margin-top: 20px;
	padding-top: 18px;
	border-top: 1px solid var(--nch-line);
}

.nch-order-review-lower section + section {
	padding-left: 24px;
	border-left: 1px solid var(--nch-line);
}

.nch-order-review-lower p {
	margin: 6px 0 0;
	color: var(--nch-muted);
	font-size: 13px;
	line-height: 1.5;
}

.nch-order-review-credit {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 18px;
	margin-top: 8px;
	font-size: 13px;
}

.nch-order-review-credit span {
	color: var(--nch-muted);
}

.nch-order-review-credit strong {
	display: block;
	margin-top: 2px;
	color: var(--nch-ink);
}

@media (max-width: 760px) {
	.nch-sales-page .nch-sidebar {
		gap: 12px;
		padding: 14px;
	}

	.nch-sales-page .nch-brand-mark {
		width: 40px;
		height: 40px;
	}

	.nch-sales-page .nch-sales-menu-button {
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	.nch-sales-page .nch-nav {
		display: none;
		padding-top: 8px;
		border-top: 1px solid rgba(255, 255, 255, 0.12);
	}

	.nch-sales-page .nch-nav.is-open {
		display: flex;
	}

	.nch-sales-page .nch-main {
		gap: 14px;
		padding: 14px;
	}

	.nch-sales-page .nch-topbar {
		gap: 14px;
	}

	.nch-sales-page .nch-topbar .nch-action-row {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.nch-sales-page .nch-topbar .nch-button {
		width: 100%;
		min-height: 44px;
	}

	.nch-sales-page .nch-kpi-grid {
		display: flex;
		gap: 8px;
		overflow-x: auto;
		padding-bottom: 3px;
		scroll-snap-type: x proximity;
	}

	.nch-sales-page .nch-kpi {
		min-width: 132px;
		padding: 13px;
		scroll-snap-align: start;
	}

	.nch-sales-tabs {
		margin-right: -14px;
		margin-left: -14px;
		padding-right: 14px;
		padding-left: 14px;
		border-right: 0;
		border-left: 0;
		border-radius: 0;
		box-shadow: none;
	}

	.nch-sales-tabs button {
		min-height: 44px;
	}

	.nch-sales-order-entry,
	.nch-sales-page .nch-inventory-list-panel {
		padding: 16px;
	}

	.nch-sales-order-entry > .nch-form-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}

	.nch-sales-order-entry > .nch-form-grid > label:nth-child(-n+2) {
		grid-column: 1 / -1;
	}

	.nch-sales-order-entry .nch-credit-strip {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.nch-sales-order-entry .nch-credit-strip div:nth-child(2) {
		border-right: 0;
	}

	.nch-sales-order-entry .nch-credit-strip div:nth-child(-n+2) {
		border-bottom: 1px solid var(--nch-line);
	}

	.nch-sales-line {
		position: relative;
		grid-template-columns: repeat(2, minmax(0, 1fr)) 40px;
		gap: 10px;
		padding: 12px;
	}

	.nch-sales-line > label:first-child {
		grid-column: 1 / 3;
	}

	.nch-sales-line > label:nth-child(2) {
		grid-column: 1;
	}

	.nch-sales-line > label:nth-child(3) {
		grid-column: 2;
	}

	.nch-sales-line .nch-line-amount {
		display: grid;
		grid-column: 1 / 3;
		grid-template-columns: 1fr auto;
		align-items: center;
		padding-top: 2px;
	}

	.nch-sales-line .nch-line-amount strong {
		margin: 0;
		text-align: right;
	}

	.nch-sales-line .nch-line-amount small {
		grid-column: 1 / -1;
	}

	.nch-sales-remove-line {
		grid-column: 3;
		grid-row: 1;
	}

	.nch-sales-order-entry .nch-submit-bar {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
	}

	.nch-sales-order-entry .nch-submit-bar p {
		grid-column: 1 / -1;
	}

	.nch-sales-order-entry .nch-submit-bar .nch-button {
		min-height: 44px;
	}

	.nch-sales-search {
		width: 100%;
	}

	.nch-sales-search input {
		height: 44px;
	}

	.nch-sales-responsive-table,
	.nch-sales-responsive-table tbody {
		display: block;
		width: 100%;
	}

	.nch-sales-responsive-table thead {
		display: none;
	}

	.nch-sales-responsive-table tbody {
		display: grid;
		gap: 12px;
	}

	.nch-sales-responsive-table tbody tr[data-sales-row] {
		display: block;
		overflow: hidden;
		border: 1px solid var(--nch-line);
		border-radius: 8px;
		background: #ffffff;
	}

	.nch-sales-responsive-table tbody tr[data-sales-row][hidden] {
		display: none;
	}

	.nch-sales-responsive-table tbody tr[data-sales-row] td {
		display: grid;
		grid-template-columns: minmax(92px, 0.36fr) minmax(0, 1fr);
		gap: 12px;
		align-items: start;
		padding: 11px 12px;
		border-bottom: 1px solid var(--nch-line);
		text-align: left;
	}

	.nch-sales-responsive-table tbody tr[data-sales-row] td:last-child {
		border-bottom: 0;
	}

	.nch-sales-responsive-table tbody tr[data-sales-row] td::before {
		content: attr(data-label);
		color: var(--nch-muted);
		font-size: 10px;
		font-weight: 800;
		text-transform: uppercase;
	}

	.nch-sales-responsive-table .nch-action-row {
		justify-content: flex-start;
	}

	.nch-sales-responsive-table .nch-button.is-small {
		min-height: 40px;
	}

	.nch-sales-responsive-table .nch-table-empty,
	.nch-sales-responsive-table .nch-table-empty td {
		display: block;
		width: 100%;
	}

	.nch-sales-page .nch-finance-modal {
		width: calc(100% - 24px);
		max-height: calc(100dvh - 24px);
		margin: auto;
	}

	.nch-sales-page .nch-finance-modal-body {
		padding: 16px;
	}

	.nch-sales-page .nch-finance-modal-footer {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.nch-sales-page .nch-finance-modal-footer .nch-button {
		width: 100%;
		min-height: 44px;
	}

	.nch-order-review-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.nch-order-review-grid > div,
	.nch-order-review-grid > div:first-child,
	.nch-order-review-grid > div:last-child {
		padding: 12px;
	}

	.nch-order-review-grid > div:nth-child(2n) {
		border-right: 0;
	}

	.nch-order-review-grid > div:nth-child(-n + 2) {
		border-bottom: 1px solid var(--nch-line);
	}

	.nch-order-review-section-heading {
		align-items: start;
		flex-direction: column;
		gap: 4px;
	}

	.nch-order-review-section-heading > small {
		text-align: left;
	}

	.nch-order-review-lower {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.nch-order-review-lower section + section {
		padding-top: 16px;
		padding-left: 0;
		border-top: 1px solid var(--nch-line);
		border-left: 0;
	}

	.nch-sales-review-modal .nch-finance-modal-footer [data-close-sales-modal] {
		grid-column: 1 / -1;
	}
}

@media (max-width: 420px) {
	.nch-sales-order-entry > .nch-form-grid {
		grid-template-columns: 1fr;
	}

	.nch-sales-order-entry > .nch-form-grid > label {
		grid-column: auto;
	}

	.nch-sales-order-entry .nch-submit-bar {
		grid-template-columns: 1fr;
	}

	.nch-sales-order-entry .nch-submit-bar .nch-button {
		width: 100%;
	}
}

/* NCH authentication and product credit */
.nch-powered-by {
	display: grid;
	width: fit-content;
	gap: 2px;
}

.nch-powered-by span {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: uppercase;
}

.nch-powered-by strong {
	font-size: 14px;
	letter-spacing: 0;
}

.nch-powered-by small {
	font-size: 11px;
}

.nch-powered-by.is-auth {
	color: #ffffff;
}

.nch-powered-by.is-auth span,
.nch-powered-by.is-auth small {
	color: #aeb8c7;
}

.nch-powered-by.is-login {
	justify-self: center;
	color: var(--nch-ink);
	text-align: center;
}

.nch-powered-by.is-login span,
.nch-powered-by.is-login small {
	color: var(--nch-muted);
}

.nch-auth-page {
	min-height: 100vh;
	background: #f3f5f8;
}

.nch-auth-shell {
	display: grid;
	min-height: 100vh;
	grid-template-columns: minmax(320px, 0.8fr) minmax(460px, 1.2fr);
}

.nch-auth-brand {
	display: flex;
	min-width: 0;
	flex-direction: column;
	justify-content: flex-start;
	padding: clamp(28px, 5vw, 72px);
	background: #101828;
	color: #ffffff;
}

.nch-auth-brand-lockup {
	display: flex;
	align-items: center;
	gap: 13px;
}

.nch-auth-brand-lockup strong,
.nch-auth-brand-lockup small {
	display: block;
}

.nch-auth-brand-lockup strong {
	font-size: 19px;
}

.nch-auth-brand-lockup small {
	margin-top: 3px;
	color: #b8c0cc;
	font-size: 12px;
}

.nch-auth-brand-copy {
	max-width: 440px;
	margin-top: auto;
	padding-bottom: 8vh;
}

.nch-auth-brand-copy .nch-eyebrow {
	color: #8fd3a5;
}

.nch-auth-brand-copy h1 {
	max-width: 390px;
	font-size: clamp(38px, 4vw, 58px);
	line-height: 1.06;
}

.nch-auth-brand-copy > p:last-child {
	max-width: 390px;
	margin: 18px 0 0;
	color: #cbd3df;
	font-size: 16px;
	line-height: 1.6;
}

.nch-auth-content {
	display: grid;
	place-items: center;
	padding: 32px;
}

.nch-auth-form {
	display: grid;
	width: min(440px, 100%);
	gap: 18px;
	padding: 30px;
}

.nch-auth-form[hidden] {
	display: none;
}

.nch-auth-form header {
	margin-bottom: 2px;
}

.nch-auth-form header h2 {
	font-size: 29px;
}

.nch-auth-form header > p:last-child {
	margin: 8px 0 0;
	color: var(--nch-muted);
	font-size: 14px;
	line-height: 1.5;
}

.nch-auth-password-control {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
}

.nch-auth-password-control input {
	min-width: 0;
	border-radius: 8px 0 0 8px;
}

.nch-auth-password-control button {
	min-width: 62px;
	border: 1px solid var(--nch-line);
	border-left: 0;
	border-radius: 0 8px 8px 0;
	background: #eef2f7;
	color: #344054;
	font: inherit;
	font-size: 12px;
	font-weight: 800;
	cursor: pointer;
}

.nch-auth-primary {
	width: 100%;
	min-height: 46px;
	font-size: 14px;
}

.nch-auth-links {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
}

.nch-auth-links a,
.nch-auth-links button,
.nch-auth-text-button,
.nch-auth-back-link {
	padding: 0;
	border: 0;
	background: transparent;
	color: #1f5fbf;
	font: inherit;
	font-size: 13px;
	font-weight: 750;
	cursor: pointer;
}

.nch-auth-text-button,
.nch-auth-back-link {
	justify-self: center;
	text-align: center;
}

.nch-auth-notice {
	margin: 0;
	padding: 11px 12px;
	border-radius: 7px;
	font-size: 13px;
	font-weight: 700;
}

.nch-auth-notice.is-success {
	background: #eaf7ee;
	color: #176b37;
}

@media (max-width: 780px) {
	.nch-auth-shell {
		grid-template-columns: 1fr;
		align-content: start;
	}

	.nch-auth-brand {
		min-height: auto;
		padding: 18px 20px;
	}

	.nch-auth-brand-copy {
		display: none;
	}

	.nch-powered-by.is-auth {
		margin-top: 18px;
	}

	.nch-auth-content {
		padding: 24px 16px;
	}

	.nch-auth-form {
		padding: 24px;
	}
}

@media (max-width: 380px) {
	.nch-auth-links {
		align-items: flex-start;
		flex-direction: column;
	}
}

/* HR and payroll */
.nch-hr-page .nch-main {
	min-width: 0;
}

.nch-hr-header {
	align-items: flex-end;
}

.nch-module-tabs {
	display: flex;
	gap: 4px;
	margin-bottom: 16px;
	padding: 4px;
	overflow-x: auto;
	background: #e9edf3;
	border: 1px solid #d8dee8;
	border-radius: 7px;
	scrollbar-width: thin;
}

.nch-module-tabs button {
	min-height: 38px;
	padding: 8px 15px;
	border: 0;
	border-radius: 5px;
	background: transparent;
	color: #536075;
	font: inherit;
	font-size: 13px;
	font-weight: 750;
	white-space: nowrap;
	cursor: pointer;
}

.nch-module-tabs button:hover {
	background: #f6f8fb;
	color: var(--nch-ink);
}

.nch-module-tabs button.is-active {
	background: #fff;
	color: var(--nch-blue);
	box-shadow: 0 1px 3px rgba(16, 24, 40, .12);
}

.nch-hr-kpis {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.nch-hr-kpis .nch-kpi:nth-child(1) { border-top: 3px solid #1769d2; }
.nch-hr-kpis .nch-kpi:nth-child(2) { border-top: 3px solid #16845b; }
.nch-hr-kpis .nch-kpi:nth-child(3) { border-top: 3px solid #6f56d9; }
.nch-hr-kpis .nch-kpi:nth-child(4) { border-top: 3px solid #1d7f96; }
.nch-hr-kpis .nch-kpi:nth-child(5) { border-top: 3px solid #c77b13; }

.nch-hr-kpis .nch-kpi strong {
	font-size: clamp(21px, 2vw, 30px);
}

.nch-hr-chart-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nch-hr-action-list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-top: 1px solid var(--nch-border);
}

.nch-hr-action-list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 68px;
	padding: 14px 18px;
	border-right: 1px solid var(--nch-border);
	color: var(--nch-ink);
	text-decoration: none;
}

.nch-hr-action-list a:last-child {
	border-right: 0;
}

.nch-hr-action-list a:hover {
	background: #f7f9fc;
}

.nch-hr-action-list strong {
	display: grid;
	min-width: 34px;
	height: 34px;
	place-items: center;
	border-radius: 17px;
	background: #e8f0ff;
	color: var(--nch-blue);
}

.nch-attendance-summary {
	display: flex;
	gap: 1px;
	margin: 0 0 16px;
	overflow-x: auto;
	border: 1px solid var(--nch-border);
	border-radius: 6px;
	background: var(--nch-border);
}

.nch-attendance-summary span {
	display: flex;
	align-items: baseline;
	gap: 7px;
	min-width: 128px;
	padding: 11px 14px;
	background: #fff;
	font-size: 12px;
	color: var(--nch-muted);
}

.nch-attendance-summary strong {
	font-size: 18px;
	color: var(--nch-ink);
}

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

.nch-hr-calendar-summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
}

.nch-hr-calendar-summary h2,
.nch-hr-calendar-summary p {
	margin: 0;
}

.nch-hr-calendar-summary p:last-child {
	margin-top: 5px;
	color: var(--nch-muted);
}

.nch-inline-tag {
	display: inline-block;
	margin: 2px 4px 2px 0;
	padding: 3px 6px;
	border-radius: 4px;
	background: #eef2f7;
	font-size: 11px;
	white-space: nowrap;
}

.nch-form-grid.is-three-column {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.nch-modal-section {
	padding: 0 0 18px;
	margin-bottom: 18px;
	border-bottom: 1px solid var(--nch-border);
}

.nch-modal-section:last-of-type {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: 0;
}

.nch-modal-section h3,
.nch-section-heading.is-compact h3 {
	margin: 0 0 12px;
	font-size: 15px;
}

.nch-section-heading.is-compact {
	margin-top: 18px;
	margin-bottom: 8px;
}

.nch-attendance-editor {
	max-height: min(56vh, 620px);
	margin-top: 16px;
	overflow: auto;
	border: 1px solid var(--nch-border);
	border-radius: 6px;
}

.nch-attendance-line {
	display: grid;
	grid-template-columns: minmax(230px, 1fr) 170px 82px 104px;
	align-items: center;
	gap: 10px;
	min-height: 58px;
	padding: 8px 12px;
	border-bottom: 1px solid var(--nch-border);
}

.nch-attendance-line:last-child {
	border-bottom: 0;
}

.nch-attendance-line .nch-check-row {
	margin: 0;
}

.nch-attendance-line .nch-check-row span {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.nch-attendance-line .nch-check-row small {
	color: var(--nch-muted);
}

.nch-check-row.is-compact {
	padding: 0;
	border: 0;
	background: transparent;
}

.nch-structure-lines {
	display: grid;
	gap: 8px;
}

.nch-holiday-lines {
	display: grid;
	gap: 8px;
	max-height: 280px;
	overflow-y: auto;
}

.nch-holiday-line {
	display: grid;
	grid-template-columns: 150px minmax(220px, 1fr) 40px;
	gap: 8px;
}

.nch-structure-line {
	display: grid;
	grid-template-columns: minmax(220px, 1fr) 160px 40px;
	gap: 8px;
}

.nch-structure-line .nch-icon-button {
	width: 40px;
	height: 40px;
}

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

	.nch-attendance-line {
		grid-template-columns: minmax(200px, 1fr) 160px;
	}
}

@media (max-width: 820px) {
	.nch-hr-header {
		align-items: flex-start;
	}

	.nch-hr-header .nch-action-row {
		width: 100%;
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.nch-hr-header .nch-button {
		width: 100%;
	}

	.nch-hr-kpis,
	.nch-hr-chart-grid,
	.nch-hr-setup-grid,
	.nch-hr-action-list,
	.nch-form-grid.is-three-column {
		grid-template-columns: 1fr;
	}

	.nch-hr-action-list a {
		border-right: 0;
		border-bottom: 1px solid var(--nch-border);
	}

	.nch-hr-action-list a:last-child {
		border-bottom: 0;
	}

	.nch-attendance-line {
		grid-template-columns: 1fr 1fr;
	}

	.nch-finance-modal[data-hr-modal="attendance"] {
		width: calc(100% - 20px);
	}
}

@media (max-width: 560px) {
	.nch-module-tabs {
		margin-inline: -12px;
		border-left: 0;
		border-right: 0;
		border-radius: 0;
	}

	.nch-hr-header .nch-action-row,
	.nch-attendance-line,
	.nch-structure-line,
	.nch-holiday-line {
		grid-template-columns: 1fr;
	}

	.nch-hr-calendar-summary {
		align-items: flex-start;
		flex-direction: column;
	}

	.nch-structure-line .nch-icon-button {
		justify-self: end;
	}
}

/* Finance posting audit */
.nch-finance-audit-page .nch-kpi-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.nch-finance-audit-page .nch-filter-bar {
	grid-template-columns: minmax(240px, 1.4fr) minmax(190px, 0.8fr) minmax(150px, 0.6fr);
}

.nch-audit-table {
	table-layout: fixed;
}

.nch-audit-table th,
.nch-audit-table td {
	white-space: normal;
	vertical-align: top;
}

.nch-audit-table th:nth-child(1),
.nch-audit-table td:nth-child(1) {
	width: 18%;
}

.nch-audit-table th:nth-child(2),
.nch-audit-table td:nth-child(2) {
	width: 25%;
}

.nch-audit-table th:nth-child(3),
.nch-audit-table td:nth-child(3) {
	width: 11%;
}

.nch-audit-reference,
.nch-audit-action {
	display: block;
	margin-top: 5px;
	color: var(--nch-muted);
	line-height: 1.45;
}

.nch-audit-reference {
	word-break: break-word;
}

.nch-audit-finding {
	display: block;
	font-weight: 650;
	line-height: 1.45;
}

#nch-edit-account .nch-form-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

#nch-edit-account select,
#nch-edit-account input {
	min-width: 0;
	width: 100%;
}

@media (max-width: 980px) {
	.nch-finance-audit-page .nch-kpi-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.nch-finance-audit-page .nch-filter-bar {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 720px) {
	.nch-finance-audit-page .nch-kpi-grid,
	.nch-finance-audit-page .nch-filter-bar {
		grid-template-columns: 1fr;
	}

	.nch-finance-audit-page .nch-table-wrap {
		overflow: visible;
	}

	.nch-audit-table,
	.nch-audit-table tbody,
	.nch-audit-table tr,
	.nch-audit-table td {
		display: block;
		width: 100% !important;
	}

	.nch-audit-table thead {
		display: none;
	}

	.nch-audit-table tr {
		margin-bottom: 12px;
		padding: 14px;
		border: 1px solid var(--nch-border);
		border-radius: 8px;
		background: #fff;
	}

	.nch-audit-table td {
		padding: 4px 0;
		border: 0;
	}

	#nch-edit-account .nch-form-grid {
		grid-template-columns: 1fr;
	}
}

/* Executive business intelligence */
.nch-executive-main {
	gap: 20px;
}

.nch-intelligence-page .nch-sidebar {
	overflow-y: auto;
}

.nch-executive-sidebar-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.nch-executive-menu-button {
	display: none;
	min-height: 40px;
	padding: 0 12px;
	border: 1px solid rgba(255, 255, 255, .25);
	border-radius: 7px;
	background: transparent;
	color: #fff;
	font: inherit;
	font-size: 12px;
	font-weight: 800;
	cursor: pointer;
}

.nch-executive-header {
	align-items: center;
}

.nch-page-subtitle,
.nch-panel-note {
	margin: 6px 0 0;
	color: var(--nch-muted);
	font-size: 13px;
	line-height: 1.45;
}

.nch-dashboard-tabs {
	display: flex;
	gap: 4px;
	padding: 4px;
	overflow-x: auto;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: var(--nch-surface);
}

.nch-dashboard-tabs a {
	min-width: max-content;
	padding: 9px 12px;
	border-radius: 6px;
	color: var(--nch-muted);
	font-size: 12px;
	font-weight: 800;
}

.nch-dashboard-tabs a:hover,
.nch-dashboard-tabs a.is-active {
	background: #eaf1fc;
	color: #1849a9;
}

.nch-executive-filter {
	display: grid;
	grid-template-columns: repeat(3, minmax(170px, 1fr)) auto;
	align-items: end;
	gap: 12px;
	padding: 14px;
}

.nch-executive-filter label {
	display: grid;
	min-width: 0;
	gap: 6px;
}

.nch-executive-filter label > span {
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-executive-filter input,
.nch-executive-filter select {
	width: 100%;
	height: 42px;
	min-width: 0;
	padding: 0 11px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fff;
	color: var(--nch-ink);
	font: inherit;
	font-size: 14px;
}

.nch-executive-filter-actions {
	display: flex;
	align-items: center;
	gap: 8px;
}

.nch-executive-filter-actions .nch-button {
	min-height: 42px;
}

.nch-executive-kpis {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 10px;
}

.nch-executive-kpis .nch-kpi {
	min-width: 0;
	padding: 15px;
	border-top: 3px solid #98a2b3;
}

.nch-executive-kpis .nch-kpi:nth-child(1) { border-top-color: #175cd3; }
.nch-executive-kpis .nch-kpi:nth-child(2) { border-top-color: #dc6803; }
.nch-executive-kpis .nch-kpi:nth-child(4) { border-top-color: #667085; }
.nch-executive-kpis .nch-kpi:nth-child(5) { border-top-color: #7f56d9; }
.nch-executive-kpis .nch-kpi:nth-child(6) { border-top-color: #0e9384; }
.nch-executive-kpis .nch-kpi.is-success { border-top-color: #16803c; }
.nch-executive-kpis .nch-kpi.is-risk { border-top-color: #d92d20; }
.nch-executive-kpis .nch-kpi.is-warning { border-top-color: #f79009; }

.nch-executive-kpis .nch-kpi strong {
	display: block;
	margin-top: 7px;
	overflow: hidden;
	font-size: 22px;
	text-overflow: ellipsis;
}

.nch-executive-kpis .nch-kpi small {
	display: block;
	margin-top: 7px;
	color: var(--nch-muted);
	font-size: 11px;
	line-height: 1.35;
}

.nch-dashboard-section {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 12px;
	scroll-margin-top: 20px;
}

.nch-executive-primary {
	display: grid;
	grid-template-columns: minmax(0, 1.7fr) minmax(280px, .65fr);
	gap: 12px;
}

.nch-executive-trend,
.nch-executive-insights,
.nch-location-dashboard,
.nch-ranking-panel {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 15px;
}

.nch-executive-column-chart {
	display: flex;
	min-height: 245px;
	align-items: stretch;
	gap: 8px;
	overflow-x: auto;
	padding: 6px 2px 0;
	border-bottom: 1px solid var(--nch-line);
}

.nch-executive-month {
	display: grid;
	min-width: 68px;
	flex: 1 0 68px;
	grid-template-rows: 180px auto auto;
	gap: 5px;
	text-align: center;
}

.nch-executive-bars {
	display: flex;
	height: 180px;
	align-items: end;
	justify-content: center;
	gap: 5px;
	padding: 0 8px;
	border-bottom: 1px solid #cfd6e1;
}

.nch-executive-bars > span {
	width: min(22px, 42%);
	min-height: 2px;
	border-radius: 4px 4px 0 0;
	background: #175cd3;
}

.nch-executive-bars > span.is-expense {
	background: #dc6803;
}

.nch-executive-month > strong {
	font-size: 11px;
}

.nch-executive-month > small {
	font-size: 10px;
	font-weight: 800;
}

.nch-executive-month-values {
	display: grid;
	gap: 2px;
	padding-bottom: 7px;
	font-size: 9px;
	text-align: left;
}

.nch-executive-month-values span,
.nch-executive-month-values small {
	display: flex;
	justify-content: space-between;
	gap: 5px;
}

.nch-executive-month-values span:first-child { color: #175cd3; }
.nch-executive-month-values span:nth-child(2) { color: #b54708; }
.nch-executive-month-values small { padding-top: 2px; border-top: 1px solid var(--nch-line); font-weight: 800; }

.nch-text-link {
	color: #175cd3;
	font-size: 13px;
	font-weight: 800;
}

.nch-location-chart {
	display: grid;
	gap: 12px;
	padding-bottom: 4px;
}

.nch-location-chart-row {
	display: grid;
	grid-template-columns: minmax(180px, .42fr) minmax(360px, 1fr) 120px;
	align-items: center;
	gap: 18px;
	min-height: 76px;
	padding: 9px 0;
	border-bottom: 1px solid var(--nch-line);
}

.nch-location-chart-row:last-child {
	border-bottom: 0;
}

.nch-location-identity strong,
.nch-location-identity small {
	display: block;
}

.nch-location-identity strong {
	font-size: 13px;
}

.nch-location-identity small {
	margin-top: 3px;
	color: var(--nch-muted);
	font-size: 11px;
}

.nch-location-bars {
	display: grid;
	gap: 7px;
}

.nch-location-bars > div {
	display: grid;
	grid-template-columns: 116px minmax(140px, 1fr) 88px;
	align-items: center;
	gap: 10px;
}

.nch-location-bars > div > span {
	color: var(--nch-muted);
	font-size: 10px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-location-bars > div > strong {
	font-size: 11px;
	text-align: right;
}

.nch-location-track {
	height: 11px;
	overflow: hidden;
	border: 1px solid #e3e8ef;
	border-radius: 3px;
	background: #f2f4f7;
}

.nch-location-track i {
	display: block;
	height: 100%;
	min-width: 0;
	border-radius: 2px;
}

.nch-location-track i.is-revenue { background: #2e90fa; }
.nch-location-track i.is-expense { background: #f79009; }
.nch-location-track i.is-adjustment { background: #12b76a; }

.nch-location-profit {
	display: grid;
	gap: 3px;
	text-align: right;
}

.nch-location-profit span {
	color: var(--nch-muted);
	font-size: 9px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-location-profit strong {
	font-size: 14px;
}

.nch-location-profit small {
	color: var(--nch-muted);
	font-size: 10px;
}

.nch-sales-summary {
	display: grid;
	grid-template-columns: repeat(3, auto);
	align-items: baseline;
	gap: 10px;
	color: var(--nch-muted);
	font-size: 12px;
}

.nch-sales-summary strong {
	color: var(--nch-ink);
	font-size: 20px;
}

.nch-sales-intelligence-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.nch-ranking-list {
	display: grid;
}

.nch-ranking-list > a,
.nch-export-heading {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(70px, .6fr) auto;
	align-items: center;
	gap: 10px;
	min-height: 56px;
	padding: 9px 0;
	border-bottom: 1px solid var(--nch-line);
}

.nch-ranking-list > a:last-child { border-bottom: 0; }
.nch-ranking-list > a > span:first-child { min-width: 0; }
.nch-ranking-list > a > span:first-child strong,
.nch-ranking-list > a > span:first-child small { display: block; }
.nch-ranking-list > a > span:first-child strong { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.nch-ranking-list > a > span:first-child small { margin-top: 3px; overflow: hidden; color: var(--nch-muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.nch-ranking-list > a > strong { font-size: 12px; text-align: right; }

.nch-export-heading {
	min-height: auto;
	padding: 0 0 7px;
	color: var(--nch-muted);
	font-size: 9px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-export-heading span:last-child { text-align: right; }

.nch-ranking-track {
	display: block;
	height: 6px;
	overflow: hidden;
	border-radius: 6px;
	background: #edf1f6;
}

.nch-ranking-track i {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: #175cd3;
}

.nch-ranking-track.is-product i { background: #16803c; }
.nch-ranking-track.is-customer i { background: #7f56d9; }

.nch-empty-copy {
	margin: 0;
	padding: 18px 0;
	color: var(--nch-muted);
	font-size: 13px;
}

.nch-inventory-intelligence-kpis {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	overflow: hidden;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fff;
}

.nch-inventory-intelligence-kpis > div {
	min-width: 0;
	padding: 14px 16px;
	border-right: 1px solid var(--nch-line);
}

.nch-inventory-intelligence-kpis > div:last-child { border-right: 0; }
.nch-inventory-intelligence-kpis span,
.nch-inventory-intelligence-kpis strong,
.nch-inventory-intelligence-kpis small { display: block; }
.nch-inventory-intelligence-kpis span { color: var(--nch-muted); font-size: 10px; font-weight: 800; text-transform: uppercase; }
.nch-inventory-intelligence-kpis strong { margin-top: 5px; font-size: 21px; }
.nch-inventory-intelligence-kpis small { margin-top: 4px; color: var(--nch-muted); font-size: 10px; }

.nch-inventory-intelligence-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.nch-inventory-intelligence-grid > .nch-panel {
	min-width: 0;
}

.nch-stock-risk-panel {
	grid-column: 1 / -1;
}

@media (max-width: 1320px) {
	.nch-executive-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.nch-sales-intelligence-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.nch-sales-intelligence-grid > :last-child { grid-column: 1 / -1; }
}

@media (max-width: 1050px) {
	.nch-customer-workspace { grid-template-columns: 1fr; }
	.nch-customer-tabs { position: static; overflow-x: auto; flex-wrap: nowrap; }
	.nch-customer-tabs button { flex: 0 0 auto; }
	.nch-executive-filter { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.nch-executive-filter-actions { justify-content: flex-end; }
	.nch-executive-primary { grid-template-columns: 1fr; }
	.nch-location-chart-row { grid-template-columns: 160px minmax(320px, 1fr) 100px; }
}

@media (max-width: 760px) {
	.nch-customer-history-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.nch-customer-history-kpis div:nth-child(2) { border-right: 0; }
	.nch-customer-history-kpis div:nth-child(-n + 2) { border-bottom: 1px solid var(--nch-line); }
	.nch-customer-profile-meta { grid-template-columns: 1fr; }
	.nch-customer-activity-row { align-items: flex-start; }
	.nch-customer-history-table { min-width: 680px; }
	.nch-intelligence-page .nch-sidebar { gap: 12px; padding: 14px; }
	.nch-intelligence-page .nch-sidebar .nch-nav { display: none; padding-top: 8px; border-top: 1px solid rgba(255, 255, 255, .12); }
	.nch-intelligence-page .nch-sidebar .nch-nav.is-open { display: flex; }
	.nch-executive-menu-button { display: inline-flex; align-items: center; justify-content: center; }
	.nch-executive-main { padding: 14px; }
	.nch-executive-header { align-items: stretch; }
	.nch-dashboard-tabs { margin-inline: -14px; padding-inline: 14px; border-right: 0; border-left: 0; border-radius: 0; }
	.nch-dashboard-tabs a { min-height: 42px; }
	.nch-executive-filter { grid-template-columns: 1fr; }
	.nch-executive-filter-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.nch-executive-filter-actions .nch-button { width: 100%; }
	.nch-executive-kpis { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 3px; scroll-snap-type: x proximity; }
	.nch-executive-kpis .nch-kpi { min-width: 158px; scroll-snap-align: start; }
	.nch-dashboard-section > .nch-section-heading { gap: 8px; }
	.nch-sales-summary { grid-template-columns: repeat(2, auto); justify-content: start; }
	.nch-sales-summary small { grid-column: 1 / -1; }
	.nch-sales-intelligence-grid,
	.nch-inventory-intelligence-grid { grid-template-columns: 1fr; }
	.nch-sales-intelligence-grid > :last-child,
	.nch-stock-risk-panel { grid-column: auto; }
	.nch-inventory-intelligence-kpis { display: flex; overflow-x: auto; }
	.nch-inventory-intelligence-kpis > div { min-width: 150px; }
	.nch-location-chart { overflow-x: auto; }
	.nch-location-chart-row { min-width: 760px; }
	.nch-location-dashboard .nch-table-wrap { max-width: calc(100vw - 60px); }
}

@media (max-width: 900px) {
	.nch-sidebar .nch-nav {
		flex-direction: column;
		flex-wrap: nowrap;
	}

	.nch-nav-category {
		width: 100%;
	}
}

/* Stock and valuation intelligence */
.nch-page-intro {
	max-width: 720px;
	margin: 7px 0 0;
	color: var(--nch-muted);
	font-size: 13px;
	line-height: 1.45;
}

.nch-report-scope {
	display: grid;
	grid-template-columns: minmax(240px, 1fr) repeat(3, minmax(155px, .55fr)) auto;
	align-items: end;
	gap: 12px;
	padding: 14px 16px;
}

.nch-report-scope > div strong,
.nch-report-scope > div small {
	display: block;
}

.nch-report-scope > div strong {
	margin-top: 3px;
	font-size: 14px;
}

.nch-report-scope > div small {
	margin-top: 4px;
	color: var(--nch-muted);
	font-size: 11px;
	line-height: 1.4;
}

.nch-report-scope label {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 6px;
}

.nch-report-scope label > span {
	color: var(--nch-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-report-scope select {
	width: 100%;
	height: 40px;
	min-width: 0;
	padding: 0 34px 0 11px;
	border: 1px solid var(--nch-line);
	border-radius: 8px;
	background: #fff;
	color: var(--nch-ink);
	font: inherit;
	font-size: 13px;
}

.nch-report-scope .nch-button {
	height: 40px;
}

.nch-report-kpis {
	grid-template-columns: repeat(6, minmax(0, 1fr));
}

.nch-report-kpis .nch-kpi {
	min-width: 0;
	padding: 15px 16px;
	border-top: 3px solid #98a2b3;
}

.nch-report-kpis .nch-kpi.is-risk {
	border-top-color: #d92d20;
}

.nch-report-kpis .nch-kpi strong {
	overflow: hidden;
	margin-top: 7px;
	font-size: 23px;
	text-overflow: ellipsis;
}

.nch-report-kpis .nch-kpi small {
	display: block;
	margin-top: 6px;
	color: var(--nch-muted);
	font-size: 10px;
	line-height: 1.35;
}

.nch-inventory-knowledge-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(380px, .9fr);
	gap: 14px;
}

.nch-inventory-knowledge-grid > .nch-panel {
	min-width: 0;
}

.nch-inventory-action-panel {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 14px;
}

.nch-inventory-action-list {
	display: flex;
	max-height: 360px;
	flex-direction: column;
	overflow-y: auto;
	border-top: 1px solid var(--nch-line);
}

.nch-inventory-action-list > a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 11px 2px 11px 10px;
	border-bottom: 1px solid var(--nch-line);
	border-left: 3px solid #98a2b3;
	color: var(--nch-ink);
}

.nch-inventory-action-list > a.is-critical { border-left-color: #d92d20; }
.nch-inventory-action-list > a.is-warning { border-left-color: #f79009; }

.nch-inventory-action-list span,
.nch-inventory-action-list small,
.nch-inventory-action-list strong,
.nch-inventory-action-list em {
	display: block;
}

.nch-inventory-action-list span {
	min-width: 0;
}

.nch-inventory-action-list small {
	color: var(--nch-muted);
	font-size: 10px;
	font-weight: 800;
	text-transform: uppercase;
}

.nch-inventory-action-list strong {
	margin-top: 3px;
	font-size: 13px;
}

.nch-inventory-action-list em {
	margin-top: 3px;
	color: var(--nch-muted);
	font-size: 11px;
	font-style: normal;
	line-height: 1.4;
}

.nch-inventory-action-list b {
	flex: 0 0 auto;
	color: var(--nch-blue);
	font-size: 11px;
}

.nch-table-knowledge {
	min-width: 980px;
}

.nch-knowledge-cell {
	max-width: 280px;
	color: #344054;
	font-size: 12px;
	font-weight: 650;
	line-height: 1.45;
}

.nch-decision-detail {
	display: block;
	margin-top: 4px;
	color: var(--nch-muted);
	font-size: 10px;
	white-space: nowrap;
}

@media (max-width: 1380px) {
	.nch-report-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.nch-report-scope { grid-template-columns: repeat(3, minmax(0, 1fr)) auto; }
	.nch-report-scope > div { grid-column: 1 / -1; }
}

@media (max-width: 1050px) {
	.nch-report-scope { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.nch-report-scope > div { grid-column: 1 / -1; }
	.nch-report-scope .nch-button { justify-self: end; }
	.nch-inventory-knowledge-grid { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
	.nch-report-scope { grid-template-columns: 1fr; }
	.nch-report-scope > div { grid-column: auto; }
	.nch-report-scope .nch-button { width: 100%; justify-self: stretch; }
	.nch-report-kpis { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 3px; }
	.nch-report-kpis .nch-kpi { min-width: 165px; }
	.nch-report-chart-grid { grid-template-columns: 1fr; }
	.nch-chart-row { grid-template-columns: minmax(120px, .5fr) minmax(0, .5fr); }
	.nch-inventory-action-list > a { align-items: flex-start; }
}

/* Location directory */
.nch-locations-page .nch-page-intro {
	max-width: 640px;
	margin: 6px 0 0;
	color: var(--nch-muted);
	font-size: 13px;
}

.nch-location-filters {
	grid-template-columns: minmax(240px, 1.4fr) minmax(190px, 0.8fr) minmax(150px, 0.6fr);
}

.nch-location-table {
	min-width: 1040px;
}

.nch-location-table td {
	vertical-align: middle;
}

.nch-location-table td:first-child,
.nch-location-table td:nth-child(4),
.nch-location-table td:nth-child(5) {
	max-width: 240px;
	overflow-wrap: anywhere;
}

@media (max-width: 760px) {
	.nch-location-filters {
		grid-template-columns: 1fr;
	}

	.nch-locations-page .nch-topbar .nch-button {
		width: 100%;
	}
}
