/* limsv2 Axis A design fixes — stamp 20261111uxfixA2d */
:root {
	--qaf-brand-teal: #0D9488;
	--qaf-hero-ink: #0F172A;
	--qaf-hero-ink-soft: #134E4A;
	--qaf-mist: #F4F8FA;
}

/* ── A2 + A10: Hero contrast + brand teal CTAs (EN+AR, all viewports) ── */
html[data-qaf-skin="salon"] .qaf-page-hero-veil {
	background:
		linear-gradient(180deg, rgba(11, 31, 42, 0.55) 0%, rgba(11, 31, 42, 0.72) 45%, rgba(11, 31, 42, 0.88) 100%),
		radial-gradient(ellipse at 18% 18%, rgba(13, 148, 136, 0.22), transparent 55%) !important;
}

html[data-qaf-skin="salon"] .qaf-page-hero-content {
	color: #F8FAFC !important;
}

html[data-qaf-skin="salon"] .qaf-page-hero-content > .qaf-container,
html[data-qaf-skin="salon"] .qaf-page-hero-content > .qaf-container.qaf-reveal {
	position: relative;
	z-index: 2;
	max-width: 52rem;
	padding: 1.1rem 1.25rem 1.25rem;
	border-radius: 18px;
	background: rgba(11, 31, 42, 0.72);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	box-shadow: 0 12px 40px rgba(11, 31, 42, 0.28);
}

html[data-qaf-skin="salon"] .qaf-page-hero h1,
html[data-qaf-skin="salon"] .qaf-page-hero .qaf-hero-lead,
html[data-qaf-skin="salon"] .qaf-page-hero .qaf-brand-mark,
html[data-qaf-skin="salon"] .qaf-page-hero .qaf-cta-note {
	color: #F8FAFC !important;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
	opacity: 1 !important;
}

/* Brand teal primary CTAs (replace sky-blue) */
html[data-qaf-skin="salon"] .qaf-page-hero .qaf-btn-primary,
html[data-qaf-skin="salon"] .qaf-page-hero .qaf-btn-lg,
html[data-qaf-skin="salon"] .qaf-btn-primary,
html[data-qaf-skin="salon"] .qaf-nav-actions .qaf-btn-primary,
html[data-qaf-skin="salon"] a.qaf-btn-primary {
	background: linear-gradient(135deg, #0D9488, #14B8A6) !important;
	color: #FFFFFF !important;
	border: none !important;
	border-radius: 999px !important;
	font-weight: 750 !important;
}

html[data-qaf-skin="salon"] .qaf-page-hero .qaf-btn-secondary,
html[data-qaf-skin="salon"] .qaf-btn-secondary {
	border: 2px solid rgba(255, 255, 255, 0.92) !important;
	color: #FFFFFF !important;
	background: rgba(255, 255, 255, 0.08) !important;
	border-radius: 999px !important;
	font-weight: 650 !important;
}

html[data-qaf-skin="salon"] .qaf-btn-on-dark.qaf-btn-secondary,
html[data-qaf-skin="salon"] .qaf-cta-band .qaf-btn-secondary {
	border: 2px solid #FFFFFF !important;
	color: #FFFFFF !important;
	background: transparent !important;
}

html[data-qaf-skin="salon"] .qaf-section .qaf-btn-secondary:not(.qaf-btn-on-dark) {
	border: 2px solid #0D9488 !important;
	color: #0F766E !important;
	background: #FFFFFF !important;
}

/* ── A4: Feature bullets as teal checks (was literal "?") ── */
.qaf-feature-list,
html[data-qaf-skin="salon"] .qaf-feature-list {
	list-style: none !important;
	padding: 0 !important;
	margin: 1rem 0 0 !important;
}
.qaf-feature-list li,
html[data-qaf-skin="salon"] .qaf-feature-list li {
	position: relative !important;
	padding: 0.4rem 0 !important;
	padding-inline-start: 1.55rem !important;
	color: inherit !important;
}
.qaf-feature-list li::before,
html[data-qaf-skin="salon"] .qaf-feature-list li::before {
	content: "" !important;
	position: absolute !important;
	inset-inline-start: 0 !important;
	top: 0.62rem !important;
	width: 0.72rem !important;
	height: 0.42rem !important;
	border-left: 2.5px solid #0D9488 !important;
	border-bottom: 2.5px solid #0D9488 !important;
	transform: rotate(-45deg) !important;
	background: none !important;
	font-size: 0 !important;
	color: transparent !important;
}

/* ── A3: Category / product imagery never collapses to 0×0 ── */
.qaf-branded-image,
html[data-qaf-skin="salon"] .qaf-branded-image {
	min-height: 200px !important;
	background: linear-gradient(145deg, #E8F5F3, #F4F8FA) !important;
}
.qaf-branded-image img,
html[data-qaf-skin="salon"] .qaf-branded-image img,
.qaf-cat-tile img,
html[data-qaf-skin="salon"] .qaf-cat-tile img {
	width: 100% !important;
	height: auto !important;
	min-height: 180px !important;
	object-fit: cover !important;
	display: block !important;
}

/* ── A5: Login — keep Sign in label; error above button ── */
.qaf-login-form-side .btn-login,
.form-signin .btn-login,
.page-card-actions .btn-login {
	min-height: 42px !important;
}
.qaf-login-error,
#qaf-login-error {
	display: none;
	margin: 0 0 0.75rem;
	padding: 0.65rem 0.85rem;
	border-radius: 10px;
	border: 1px solid #FECACA;
	background: #FEF2F2;
	color: #991B1B;
	font-size: 0.92rem;
	line-height: 1.35;
}
.qaf-login-error.is-visible,
#qaf-login-error.is-visible {
	display: block;
}
.qaf-login-form-side .btn-primary,
.qaf-login-form-side .btn-login {
	background: #0D9488 !important;
	border-color: #0D9488 !important;
	color: #fff !important;
}

/* ── A1 + A5 crowding: Desk chrome at ≤480 / ≤768 ── */
@media (max-width: 768px) {
	html[data-qaf-skin="salon"] body.desk,
	html[data-qaf-skin="salon"] body[data-route^="Workspaces"],
	html[data-qaf-skin="salon"] .main-section {
		overflow-x: hidden !important;
		max-width: 100vw !important;
	}

	html[data-qaf-skin="salon"] .desktop-navbar,
	html[data-qaf-skin="salon"] .qaf-salon-navbar,
	html[data-qaf-skin="salon"] header.navbar,
	html[data-qaf-skin="salon"] .navbar {
		display: flex !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		gap: 0.35rem !important;
		padding-inline: 0.45rem !important;
		min-height: 52px !important;
		max-width: 100vw !important;
		overflow: hidden !important;
	}

	html[data-qaf-skin="salon"] .desktop-keyboard-shortcut,
	html[data-qaf-skin="salon"] .navbar .desktop-keyboard-shortcut,
	html[data-qaf-skin="salon"] .qaf-salon-navbar .desktop-keyboard-shortcut {
		display: none !important;
	}

	html[data-qaf-skin="salon"] .desktop-navbar-modal-search,
	html[data-qaf-skin="salon"] .desktop-search-wrapper,
	html[data-qaf-skin="salon"] .navbar .search-bar {
		flex: 1 1 auto !important;
		min-width: 0 !important;
		max-width: none !important;
	}

	html[data-qaf-skin="salon"] .qaf-ai-chip span:not(.qaf-ai-ico),
	html[data-qaf-skin="salon"] .qaf-salon-navbar__cc .label,
	html[data-qaf-skin="salon"] .navbar .nav-link .ellipsis {
		display: none !important;
	}

	/* Force visible mobile nav affordance */
	#qaf-mobile-nav-toggle,
	.qaf-mobile-nav-toggle {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		border-radius: 10px;
		border: 1px solid #D1E3EF;
		background: #fff;
		color: #0B1F2A;
		flex: 0 0 auto;
		z-index: 50;
		cursor: pointer;
	}
	#qaf-mobile-nav-toggle span {
		display: block;
		width: 18px;
		height: 2px;
		background: currentColor;
		box-shadow: 0 5px 0 currentColor, 0 -5px 0 currentColor;
	}

	body.qaf-mobile-nav-open .body-sidebar-container,
	body.qaf-mobile-nav-open aside.body-sidebar,
	body.qaf-mobile-nav-open .left-sidebar-container,
	body.qaf-mobile-nav-open #qaf-shell,
	body.qaf-mobile-nav-open .qaf-tree-nav,
	body.qaf-mobile-nav-open .desk-sidebar {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
		position: fixed !important;
		inset: 52px auto 0 0 !important;
		width: min(86vw, 320px) !important;
		max-width: 320px !important;
		min-width: 240px !important;
		height: calc(100vh - 52px) !important;
		z-index: 1200 !important;
		background: #fff !important;
		overflow: auto !important;
		box-shadow: 8px 0 28px rgba(11, 31, 42, 0.18) !important;
		border: 0 !important;
		flex: none !important;
	}
	html[dir="rtl"] body.qaf-mobile-nav-open .body-sidebar-container,
	html[dir="rtl"] body.qaf-mobile-nav-open #qaf-shell,
	html[dir="rtl"] body.qaf-mobile-nav-open .qaf-tree-nav {
		inset: 52px 0 0 auto !important;
		box-shadow: -8px 0 28px rgba(11, 31, 42, 0.18) !important;
	}
	#qaf-mobile-nav-backdrop {
		display: none;
		position: fixed;
		inset: 52px 0 0 0;
		background: rgba(11, 31, 42, 0.42);
		z-index: 1100;
	}
	body.qaf-mobile-nav-open #qaf-mobile-nav-backdrop {
		display: block;
	}

	/* Desktop icons / workspace must remain usable */
	html[data-qaf-skin="salon"] .desktop-container,
	html[data-qaf-skin="salon"] .layout-main-section,
	html[data-qaf-skin="salon"] .page-container,
	html[data-qaf-skin="salon"] .frappe-list,
	html[data-qaf-skin="salon"] .list-row-container {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		min-height: 40vh !important;
		overflow-x: auto !important;
		max-width: 100vw !important;
	}

	html[data-qaf-skin="salon"] .icon-grid,
	html[data-qaf-skin="salon"] .desktop-icon-grid,
	html[data-qaf-skin="salon"] .qaf-desk-section__grid,
	html[data-qaf-skin="salon"] .qaf-module-tile-grid {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
		padding: 0.75rem !important;
	}

	html[data-qaf-skin="salon"] .desktop-icon,
	html[data-qaf-skin="salon"] .app-icon,
	html[data-qaf-skin="salon"] .qaf-desk-tile {
		min-height: 96px !important;
		overflow: visible !important;
	}
	html[data-qaf-skin="salon"] .desktop-icon .app-icon-title,
	html[data-qaf-skin="salon"] .desktop-icon .title,
	html[data-qaf-skin="salon"] .qaf-desk-tile .label {
		white-space: normal !important;
		overflow: visible !important;
		text-overflow: unset !important;
		line-height: 1.2 !important;
		max-height: none !important;
		font-size: 12px !important;
	}
}

@media (max-width: 480px) {
	html[data-qaf-skin="salon"] .qaf-page-hero {
		min-height: 70vh !important;
	}
	html[data-qaf-skin="salon"] .qaf-page-hero-content > .qaf-container {
		margin-inline: 0.65rem;
		background: rgba(11, 31, 42, 0.82);
	}
	html[data-qaf-skin="salon"] .navbar .notifications-icon,
	html[data-qaf-skin="salon"] .navbar .dropdown-help,
	html[data-qaf-skin="salon"] .qaf-help-chip {
		display: none !important;
	}
}

/* ── A8/A9 list filters density + Draft semantics ── */
body[data-route*="Lab Sample"] .standard-filter-section,
body[data-doctype="Lab Sample"] .standard-filter-section,
.page-form .standard-filter-section {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	gap: 0.5rem 0.75rem;
}
body.qaf-filters-collapsed .standard-filter-section .form-group:nth-child(n + 5),
body.qaf-filters-collapsed .standard-filter-section > .frappe-control:nth-child(n + 5),
body.qaf-filters-collapsed .filter-x-box .form-group:nth-child(n + 5) {
	display: none !important;
}
.qaf-filter-toggle {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin: 0.35rem 0 0.6rem;
	padding: 0.35rem 0.7rem;
	border-radius: 999px;
	border: 1px solid #CBD5E1;
	background: #fff;
	color: #0F172A;
	font-size: 0.85rem;
	cursor: pointer;
}
.indicator-pill.red,
.indicator.red,
[data-filter="status"] .indicator-pill.red {
	/* Draft must not read as error — neutralized when label is Draft via JS class */
}
.indicator-pill.qaf-draft-neutral,
.indicator.qaf-draft-neutral {
	background: #E2E8F0 !important;
	color: #334155 !important;
	border-color: #CBD5E1 !important;
}

/* ── A11: Form tabs — wrap / scroll without clipping critical tabs ── */
body[data-qaf-form="1"] .form-tabs-list,
body[data-qaf-form="1"] ul.nav-tabs.form-tabs,
.form-tabs-list,
ul.form-tabs {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 0.25rem !important;
	overflow-x: auto !important;
	max-width: 100% !important;
	padding-bottom: 0.25rem !important;
}
body[data-qaf-form="1"] .form-tabs .nav-link,
.form-tabs .nav-link {
	white-space: nowrap !important;
}
.qaf-form-tabs-more {
	margin-inline-start: 0.25rem;
}

/* ── A9: Analytics Dashboard label not clipped ── */
html[data-qaf-skin="salon"] .desktop-icon,
html[data-qaf-skin="salon"] .widget.shortcut-widget-box,
html[data-qaf-skin="salon"] .shortcut-widget-box {
	overflow: visible !important;
	min-height: 108px !important;
}
html[data-qaf-skin="salon"] .desktop-icon .app-icon-title,
html[data-qaf-skin="salon"] .shortcut-widget-box .widget-title,
html[data-qaf-skin="salon"] .widget-title {
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: unset !important;
	line-height: 1.25 !important;
	max-height: none !important;
	padding-bottom: 4px !important;
}

/* Hide duplicate shortcut tiles with same label in a workspace */
.widget-group .shortcut-widget-box[data-qaf-dup="1"],
.shortcut-widget-box[data-qaf-dup="1"] {
	display: none !important;
}

/* ── Print letterhead / number alignment helpers ── */
.print-format .letter-head h3,
.letter-head h3 {
	letter-spacing: 0;
}
.print-format .page-break .numeric,
.print-format td.numeric,
.print-format .text-right,
.print-format .qaf-inv-items .num,
.print-format .qaf-inv-totals .num {
	text-align: right !important;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1;
}


/* uxfixA2b: force hero secondary ghost contrast */
 border: 2px solid #FFFFFF !important;
 color: #FFFFFF !important;
 background: rgba(255,255,255,0.12) !important;
 opacity: 1 !important;
 text-shadow: none !important;
}
 max-width: min(52rem, calc(100% - 1.2rem)) !important;
}
@media (max-width: 768px) {
 /* reduce header clutter */
 }
 display: none !important;
 }
}
