/* Search helpers shared by the search page and the home page: senior center name suggestions and the
   restyled Google location dropdown. Both are appended to <body>, so nothing here is scoped to a form. */

/* Senior center name suggestions (suggest.js), styled like the location dropdown. */
.scs-suggest {
	position: absolute;
	z-index: 110; /* under the site's sticky header (120), so it slides beneath it on scroll */
	min-width: 360px;
	max-width: calc(100vw - 32px);
	margin-top: 14px;
	padding: 6px;
	border: 1px solid #e8e9ec;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 16px 40px -12px rgba(28, 29, 32, .22), 0 2px 6px rgba(28, 29, 32, .06);
	font-family: Archivo, sans-serif;
}
.scs-suggest[hidden] { display: none; }
.scs-suggest a { display: flex; align-items: center; gap: 12px; padding: 9px 12px; border-radius: 10px; color: #1c1d20; text-decoration: none; }
.scs-suggest a:hover, .scs-suggest a.is-active { background: #f2f4f4; }
.scs-suggest .scs-sug-i { display: grid; flex: none; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #e8f1f8; color: #035a9f; font-size: 14px; }
.scs-suggest a.is-active .scs-sug-i { background: #035a9f; color: #fff; }
.scs-suggest .scs-sug-t { display: flex; flex-direction: column; min-width: 0; }
.scs-suggest b { overflow: hidden; font-size: 15.5px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.scs-suggest b mark { padding: 0; background: none; color: #035a9f; }
.scs-suggest small { color: #73757c; font-size: 13.5px; }
.scs-suggest-h { padding: 8px 12px 4px; color: #73757c; font-size: 11.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }

/* Location suggestions (Voxel's Google Places dropdown, appended to <body>). */
body.scs-suggest-on .ts-autocomplete-dropdown {
	min-width: 340px;
	margin: 14px 0 0 -12px;
	padding: 6px;
	border: 1px solid #e8e9ec;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 16px 40px -12px rgba(28, 29, 32, .22), 0 2px 6px rgba(28, 29, 32, .06);
	font-family: Archivo, sans-serif;
}
body.scs-suggest-on .ts-autocomplete-dropdown .suggestion {
	position: relative;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 12px;
	border: 0;
	border-radius: 10px;
	color: #1c1d20;
	font-size: 16px;
	line-height: 1.35;
}
body.scs-suggest-on .ts-autocomplete-dropdown .suggestion::before {
	content: "\f3c5";
	flex: none;
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #e8f1f8;
	color: #035a9f;
	font: 900 14px "Font Awesome 5 Free";
}
body.scs-suggest-on .ts-autocomplete-dropdown .suggestion.active,
body.scs-suggest-on .ts-autocomplete-dropdown .suggestion:hover { background: #f2f4f4; }
body.scs-suggest-on .ts-autocomplete-dropdown .suggestion.active::before,
body.scs-suggest-on .ts-autocomplete-dropdown .suggestion:hover::before { background: #035a9f; color: #fff; }
body.scs-suggest-on .ts-autocomplete-dropdown .suggestion--address { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.scs-suggest-on .ts-autocomplete-dropdown .ts-autocomplete-attrib { margin-top: 4px; padding: 8px 10px 4px; border-top: 1px solid #e8e9ec; }
body.scs-suggest-on .ts-autocomplete-dropdown .ts-autocomplete-attrib img { height: 12px; opacity: .7; }
@media (max-width: 860px) {
	body.scs-suggest-on .ts-autocomplete-dropdown { min-width: 0; max-width: calc(100vw - 32px); margin: 12px 0 0; }
}

/* Voxel puts its dropdowns above everything (z-index 500000); keep them under the sticky header too. */
body.scs-suggest-on .ts-autocomplete-dropdown { z-index: 110 !important; }
@media (min-width: 768px) {
	/* The search forms' filter pop-ups only (search page ff41977, home page b34da30), not the header's own
	   menus. On phones they open full screen and stay on top. */
	body.scs-suggest-on .vx-popup .ts-popup-root.elementor-element-ff41977-wrap,
	body.scs-suggest-on .vx-popup .ts-popup-root.elementor-element-b34da30-wrap { z-index: 110 !important; }
}
