.mao-search-trigger {
  background: none;
  border: none;
  cursor: pointer;
  color: inherit;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 14px;
  height: 100%;
}
.mao-search-trigger:hover { color: #d4af6a; }
/* Default hidden -- JS explicitly sets display:flex once it knows which
   breakpoint applies. Without this, both triggers are briefly visible
   (display:flex from their own class rules) during the paint before
   syncVisibility() runs, which read as "two search icons" on desktop. */
.mao-search-trigger--mobile {
  display: none;
  position: absolute;
  z-index: 10000;
  width: 30px;
  height: 30px;
  padding: 0;
  background: rgba(0,0,0,.04);
  border-radius: 50%;
}
/* Sibling nav <a> elements have a fixed height (matches Enfold's own menu row
   height); our injected <li> shrank to its content's height (18px) instead of
   stretching to match, so the icon sat too high/short instead of vertically
   centered in the full menu row. Fix: give the li the same explicit height. */
li.mao-search-trigger-li { display: flex; align-items: center; height: 50px; }

/* On the dark PrivatJet teaser page the trigger inherits black from the
   theme's entry-content link color (same override family as <a>/<strong>/
   table) -- force it visible against the black header on that page only. */
.mao-darkjet-page .mao-search-trigger { color: #fff !important; }
.mao-darkjet-page .mao-search-trigger:hover { color: #d4af6a !important; }

#mao-search-panel {
  position: fixed;
  inset: 0;
  z-index: 100000;
  background: rgba(0,0,0,.18);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  opacity: 0;
  visibility: hidden;
  transition: opacity .18s ease;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}
#mao-search-panel.mao-open { opacity: 1; visibility: visible; }
#mao-search-inner {
  width: min(640px, 92vw);
  margin-top: 12vh;
}
#mao-search-inputwrap {
  display: flex;
  align-items: center;
  gap: 12px;
  background: rgba(20,20,20,.85);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 14px;
  padding: 16px 18px;
  color: #fff;
  box-shadow: 0 12px 40px rgba(0,0,0,.25);
}
#mao-search-input {
  flex: 1;
  background: none !important;
  border: none !important;
  outline: none;
  color: #fff !important;
  font-size: 17px;
  line-height: 1.2;
  box-shadow: none !important;
}
#mao-search-input::placeholder { color: rgba(255,255,255,.5) !important; }
#mao-search-go {
  background: none;
  border: none;
  color: rgba(255,255,255,.55);
  cursor: pointer;
  padding: 4px;
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
#mao-search-go svg { display: block; }
#mao-search-go:hover { color: #d4af6a; }
#mao-search-close {
  background: none;
  border: none;
  color: rgba(255,255,255,.6);
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  padding: 0 2px;
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
#mao-search-close:hover { color: #fff; }
#mao-search-results {
  margin-top: 10px;
  max-height: 60vh;
  overflow-y: auto;
  background: rgba(20,20,20,.85);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  box-shadow: 0 12px 40px rgba(0,0,0,.25);
}
#mao-search-results:empty { border: none; }
.mao-sr-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 9px 14px;
  color: #eaeaea;
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,.08);
  font-size: 13.5px;
  line-height: 1.3;
  font-weight: 600;
}
.mao-sr-row:last-child { border-bottom: none; }
.mao-sr-row:hover { background: rgba(255,255,255,.06); color: #fff; }
.mao-sr-thumb {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  object-fit: cover;
  flex-shrink: 0;
  background: rgba(255,255,255,.08);
}
.mao-sr-noimg { background: linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,.04)); }
.mao-sr-title { flex: 1; }
.mao-sr-empty {
  padding: 16px 18px;
  color: rgba(255,255,255,.5);
  font-size: 14px;
}
