/* ==========================================================================
   COMPONENTE: BARRA DI RICERCA UNIVERSALE (2026-search.css)
   ========================================================================== */
.search-box { position: relative; display: block; width: 100%; max-width: 380px; margin: 0; padding: 0; }
.search-box input { position: relative; display: block; width: 100%; height: 42px; margin: 0; padding: 0 46px 0 16px; font-family: inherit; font-size: 14px; font-weight: 800; text-transform: uppercase; color: var(--search-icon-color, #2f6f6b); background: #ffffff; border: 2px solid var(--search-icon-color, #2f6f6b); border-radius: 12px; outline: none; box-shadow: 0 4px 10px var(--shadow-black-soft, rgba(0, 0, 0, 0.3)); box-sizing: border-box; transition: all 0.3s ease; }
.search-box input::placeholder { font-family: inherit; font-size: 14px; font-weight: 800; text-transform: uppercase; color: var(--search-icon-color, #2f6f6b); opacity: 1; }
.search-box input::-webkit-input-placeholder { font-family: inherit; font-size: 14px; font-weight: 800; text-transform: uppercase; color: var(--search-icon-color, #2f6f6b); opacity: 1; }
.search-box input::-moz-placeholder { font-family: inherit; font-size: 14px; font-weight: 800; text-transform: uppercase; color: var(--search-icon-color, #2f6f6b); opacity: 1; }
.search-box input:-ms-input-placeholder { font-family: inherit; font-size: 14px; font-weight: 800; text-transform: uppercase; color: var(--search-icon-color, #2f6f6b); opacity: 1; }
.search-icon { position: absolute; top: 50%; right: 14px; left: auto; display: flex; justify-content: center; align-items: center; width: 20px; height: 20px; transform: translateY(-50%); cursor: pointer; pointer-events: auto; z-index: 2; }
.search-icon svg { width: 18px; height: 18px; }
.search-results-list { position: absolute; bottom: calc(100% + 8px); left: 0; display: none; overflow-y: auto; width: 100%; max-height: 260px; margin: 0; padding: 0; font-size: 14px; text-align: left; background: var(--color-white, #ffffff); border: 1px solid var(--primary-btn-border, #a8c3c1); border-radius: 12px; box-shadow: 0 -6px 18px var(--shadow-black-soft, rgba(0, 0, 0, 0.3)); z-index: 999; }
.search-dropdown-menu { margin: 0; padding: 6px 0; list-style: none; }
.search-dropdown-menu li { margin: 0; padding: 0; }
.search-dropdown-menu li a { display: block; padding: 8px 16px; font-size: 13px; line-height: 17px; text-decoration: none; color: var(--color-dark-text, #333333); transition: background 0.2s, color 0.2s; }
.search-dropdown-menu li a:hover { background: var(--primary-btn-hover, #2f6f6b); color: var(--color-white, #ffffff); }
.search-dropdown-menu li a strong { font-weight: 700; color: var(--search-icon-color, #2f6f6b); }
.search-dropdown-menu li a:hover strong { color: var(--color-white, #ffffff); }
.no-results { padding: 12px 16px; font-size: 13px; font-style: italic; text-align: center; color: var(--color-muted-text, #777777); }

/* --- RESPONSIVE SEARCH --- */
@media screen and (max-width: 1024px) {
	.search-box { flex: 1 1 auto; max-width: 380px; }
}
@media screen and (max-width: 768px) {
	.search-box { flex: 1 1 auto; max-width: none; }
	.search-box input { height: 40px; font-size: 13px; }
	.search-box input::placeholder { font-size: 13px; }
	.search-box input::-webkit-input-placeholder { font-size: 13px; }
	.search-box input::-moz-placeholder { font-size: 13px; }
	.search-box input:-ms-input-placeholder { font-size: 13px; }
}
@media screen and (max-width: 564px) {
	.search-box { width: 100%; max-width: 280px; }
	.search-box input { height: 38px; line-height: 34px; font-size: 11px; text-align: center; padding: 0 35px; }
	.search-box input::placeholder { font-size: 11px; font-weight: 700; line-height: 34px; text-align: center; }
	.search-box input::-webkit-input-placeholder { font-size: 11px; font-weight: 700; line-height: 34px; text-align: center; }
	.search-box input::-moz-placeholder { font-size: 11px; font-weight: 700; line-height: 34px; text-align: center; }
	.search-box input:-ms-input-placeholder { font-size: 11px; font-weight: 700; line-height: 34px; text-align: center; }
}