/* Technical resources (/technical-manuals/) and the shared search field and glyph masks the Tradeshow and 404 pages also use.
   Spacing, type and colour are native controls and kit bindings; this file holds state (chips, zebra, hover), glyphs and tier switches. */

/* ---- glyph masks (lucide, currentColor): a container with .iwg-ico + .iwg-ico--<name> draws the glyph on ::after (::before is Elementor's overlay) ---- */
:root {
	--iwg-ico-file: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2224%22%20height=%2224%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M15%202H6a2%202%200%200%200-2%202v16a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2V7Z%22/%3E%3Cpath%20d=%22M14%202v4a2%202%200%200%200%202%202h4%22/%3E%3Cpath%20d=%22M10%209H8%22/%3E%3Cpath%20d=%22M16%2013H8%22/%3E%3Cpath%20d=%22M16%2017H8%22/%3E%3C/svg%3E");
	--iwg-ico-list: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2224%22%20height=%2224%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M3%2012h.01%22/%3E%3Cpath%20d=%22M3%2018h.01%22/%3E%3Cpath%20d=%22M3%206h.01%22/%3E%3Cpath%20d=%22M8%2012h13%22/%3E%3Cpath%20d=%22M8%2018h13%22/%3E%3Cpath%20d=%22M8%206h13%22/%3E%3C/svg%3E");
	--iwg-ico-badge: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2224%22%20height=%2224%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M3.85%208.62a4%204%200%200%201%204.78-4.77%204%204%200%200%201%206.74%200%204%204%200%200%201%204.78%204.78%204%204%200%200%201%200%206.74%204%204%200%200%201-4.77%204.78%204%204%200%200%201-6.75%200%204%204%200%200%201-4.78-4.77%204%204%200%200%201%200-6.76Z%22/%3E%3Cpath%20d=%22m9%2012%202%202%204-4%22/%3E%3C/svg%3E");
	--iwg-ico-book: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2224%22%20height=%2224%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M12%207v14%22/%3E%3Cpath%20d=%22M3%2018a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1h5a4%204%200%200%201%204%204%204%204%200%200%201%204-4h5a1%201%200%200%201%201%201v13a1%201%200%200%201-1%201h-6a3%203%200%200%200-3%203%203%203%200%200%200-3-3z%22/%3E%3C/svg%3E");
	--iwg-ico-wrench: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2224%22%20height=%2224%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M14.7%206.3a1%201%200%200%200%200%201.4l1.6%201.6a1%201%200%200%200%201.4%200l3.77-3.77a6%206%200%200%201-7.94%207.94l-6.91%206.91a2.12%202.12%200%200%201-3-3l6.91-6.91a6%206%200%200%201%207.94-7.94l-3.76%203.76z%22/%3E%3C/svg%3E");
	--iwg-ico-download: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2224%22%20height=%2224%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M21%2015v4a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2v-4%22/%3E%3Cpath%20d=%22m7%2010%205%205%205-5%22/%3E%3Cpath%20d=%22M12%2015V3%22/%3E%3C/svg%3E");
	--iwg-ico-lock: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2224%22%20height=%2224%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Crect%20width=%2218%22%20height=%2211%22%20x=%223%22%20y=%2211%22%20rx=%222%22%20ry=%222%22/%3E%3Cpath%20d=%22M7%2011V7a5%205%200%200%201%2010%200v4%22/%3E%3C/svg%3E");
	--iwg-ico-truck: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2224%22%20height=%2224%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M14%2018V6a2%202%200%200%200-2-2H4a2%202%200%200%200-2%202v11a1%201%200%200%200%201%201h2%22/%3E%3Cpath%20d=%22M15%2018H9%22/%3E%3Cpath%20d=%22M19%2018h2a1%201%200%200%200%201-1v-3.65a1%201%200%200%200-.22-.624l-3.48-4.35A1%201%200%200%200%2017.52%208H14%22/%3E%3Ccircle%20cx=%2217%22%20cy=%2218%22%20r=%222%22/%3E%3Ccircle%20cx=%227%22%20cy=%2218%22%20r=%222%22/%3E%3C/svg%3E");
}

html body .elementor .iwg-ico { position: relative; flex: none; }
html body .elementor .iwg-ico::after,
html body .iwg-s404__arrow.iwg-ico::after {
	content: '';
	position: absolute;
	inset: 0;
	background-color: currentColor;
	-webkit-mask: var(--iwg-ico) center / contain no-repeat;
	mask: var(--iwg-ico) center / contain no-repeat;
}
.iwg-ico--file { --iwg-ico: var(--iwg-ico-file); }
.iwg-ico--list { --iwg-ico: var(--iwg-ico-list); }
.iwg-ico--badge { --iwg-ico: var(--iwg-ico-badge); }
.iwg-ico--book { --iwg-ico: var(--iwg-ico-book); }
.iwg-ico--wrench { --iwg-ico: var(--iwg-ico-wrench); }
.iwg-ico--lock { --iwg-ico: var(--iwg-ico-lock); }
.iwg-ico--truck { --iwg-ico: var(--iwg-ico-truck); }
.iwg-ico--search { --iwg-ico: var(--iwg-icon-search); }
.iwg-ico--arrow { --iwg-ico: var(--iwg-icon-arrow); }

/* ---- search field (hero of Technical resources, 404): icon, input, Clear ---- */
.iwg-docsearch {
	display: flex;
	align-items: center;
	gap: 16px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--intwater-white-34);
	color: var(--intwater-white);
}
.iwg-docsearch .iwg-ico { width: 22px; height: 22px; color: var(--intwater-aqua); }
.iwg-docsearch .iwg-docsearch__input {
	flex: 1;
	height: auto;
	border-width: 0;
	min-width: 0;
	appearance: none;
	border: 0;
	border-radius: 0;
	outline: none;
	background: transparent;
	padding: 0;
	margin: 0;
	box-shadow: none;
	color: var(--intwater-white);
	font-family: var(--e-global-typography-intwater_search_page-font-family), sans-serif;
	font-weight: var(--e-global-typography-intwater_search_page-font-weight);
	font-size: var(--e-global-typography-intwater_search_page-font-size);
	letter-spacing: var(--e-global-typography-intwater_search_page-letter-spacing);
	line-height: 1.3;
}
.iwg-docsearch .iwg-docsearch__input:focus,
.iwg-docsearch .iwg-docsearch__input:focus-visible { outline: 0; box-shadow: none; border-width: 0; }
.iwg-docsearch .iwg-docsearch__input::placeholder { color: rgba(255, 255, 255, .55); opacity: 1; }
.iwg-docsearch__input::-webkit-search-cancel-button,
.iwg-docsearch__input::-webkit-search-decoration { display: none; -webkit-appearance: none; }
.iwg-docsearch:focus-within { border-bottom-color: var(--intwater-white); }
.iwg-docsearch .iwg-docsearch__clear[hidden] { display: none; }
.iwg-docsearch .iwg-docsearch__clear {
	appearance: none;
	background: transparent;
	border-radius: 0;
	min-width: 0;
	border: 0;
	padding: 0;
	cursor: pointer;
	color: var(--intwater-white);
	font-family: var(--e-global-typography-intwater_micro_label-font-family), sans-serif;
	font-weight: 800;
	font-size: 10.5px;
	letter-spacing: .18em;
	text-transform: uppercase;
}
.iwg-docsearch__clear:focus-visible { outline: 2px solid var(--intwater-aqua); outline-offset: 4px; }

/* ---- filter chips: state is the .is-on class js/tech.js toggles; the resting look is the native button controls ---- */
html body .elementor .iwg-filters .iwg-chip .elementor-button-text { display: inline-flex; align-items: center; gap: 9px; }
html body .elementor .iwg-filters .iwg-chip .iwg-chip__n { font-size: 10px; font-weight: 800; color: var(--intwater-muted); letter-spacing: .13em; }
html body .elementor .iwg-filters .iwg-chip .elementor-button { transition: background-color 180ms linear, border-color 180ms linear, color 180ms linear; }
html body .elementor .iwg-filters .iwg-chip.is-on .elementor-button,
html body .elementor .iwg-filters .iwg-chip.is-on .elementor-button:hover,
html body .elementor .iwg-filters .iwg-chip.is-on .elementor-button:focus {
	background-color: var(--intwater-blue);
	border-color: var(--intwater-blue);
	color: var(--intwater-white);
}
html body .elementor .iwg-filters .iwg-chip.is-on .iwg-chip__n { color: rgba(255, 255, 255, .7); }

/* Shown only while a filter, a search or ?product= is active (js/tech.js sets the classes on .iwg-tech). */
.iwg-tech .iwg-reset,
.iwg-tech .iwg-product-note,
.iwg-tech .iwg-doc-none { display: none; }
.iwg-tech.has-filter .iwg-reset { display: flex; }
.iwg-tech.has-product .iwg-product-note { display: flex; }
.iwg-tech.is-empty .iwg-doc-none { display: flex; }
.iwg-tech .iwg-doc.is-filtered { display: none; }
.iwg-tech .iwg-product-note .elementor-widget-text-editor p { margin: 0; }

/* ---- document rows ---- */
.iwg-doc .e-con, .iwg-doc .iwg-doc__title { min-width: 0; }
.iwg-doc .iwg-doc__title .elementor-heading-title, .iwg-doc .iwg-doc__applies .elementor-heading-title { overflow-wrap: anywhere; }
html body .elementor .iwg-doc { color: var(--intwater-ink); transition: background-color 180ms linear; }
html body .elementor .iwg-doc--alt { background-color: var(--intwater-zebra); }
html body .elementor .iwg-doc:hover,
html body .elementor .iwg-doc:focus-visible { background-color: var(--intwater-row-hover); color: var(--intwater-ink); }
html body .elementor .iwg-doc:focus-visible { outline: 2px solid var(--intwater-blue); outline-offset: -2px; }
.iwg-doc__icon { color: var(--intwater-orange); }
.iwg-doc__icon.iwg-ico { margin-top: 2px; }
html body .elementor .iwg-doc__kind .elementor-heading-title { display: inline-flex; align-items: center; gap: 9px; white-space: nowrap; }
html body .elementor .iwg-doc__kind .elementor-heading-title::after {
	content: '';
	width: 13px;
	height: 13px;
	background-color: currentColor;
	-webkit-mask: var(--iwg-icon-arrow) center / contain no-repeat;
	mask: var(--iwg-icon-arrow) center / contain no-repeat;
}
html body .elementor .iwg-doc__kind--pdf .elementor-heading-title::after {
	-webkit-mask-image: var(--iwg-ico-download);
	mask-image: var(--iwg-ico-download);
}

/* ---- reference tools ---- */
.iwg-tool__icon { color: var(--intwater-blue); }

@media (max-width: 767px) {
	.iwg-docsearch { gap: 12px; }
	.iwg-docsearch .iwg-ico { width: 20px; height: 20px; }
}

/* Tile CTAs: a block flex heading, so the inline-flex line box does not add the body's 27px strut under a 10.5px label (the 404 route tiles share this). */
html body .elementor .iwg-tool .iwg-arrow .elementor-heading-title,
html body .elementor .iwg-route .iwg-arrow .elementor-heading-title { display: flex; }
