/* Custom Search Form Styling */
.search-box {
  float: right !important;
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  height: 40px !important; /* Match navbar height */
}

.search-box form {
  display: flex;
  align-items: center;
  background: transparent;
  border: none;
  margin: 0px 15px 0 0;
  padding: 0;
  height: 100%;
  position: relative;
}

.search-box input[type="search"] {
  background: rgba(255, 255, 255, 0.1) !important;
  border: none !important;
  border-radius: 4px !important;
  height: 32px !important;
  min-height: 32px !important;
  font-size: 14px !important;
  padding: 6px 35px 6px 8px !important;
  color: rgba(255, 255, 255, 0.9) !important;
  outline: none;
  width: 150px;
  transition: all 0.2s ease;
}

.search-box input[type="search"]:hover,
.search-box input[type="search"]:focus {
  background: rgba(255, 255, 255, 0.1) !important;
  border-color: rgba(255, 255, 255, 0.5) !important;
}

.search-box input[type="search"]::placeholder {
  color: rgba(255, 255, 255, 0.6) !important;
}

.search-box button[type="submit"] {
  background: transparent !important;
  border: none !important;
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  padding: 4px !important;
  height: 24px !important;
  width: 24px !important;
  cursor: pointer;
  color: rgba(255, 255, 255, 0.7);
  transition: all 0.2s ease;
  z-index: 1;
}

.search-box button[type="submit"]:hover {
  color: rgba(255, 255, 255, 1);
}

.search-box button[type="submit"] svg {
  display: block;
  width: 16px;
  height: 16px;
}

@media (max-width: 999px) {
  .search-box {
    float: none !important;
    margin: 0 auto !important;
    position: absolute;
    right: 10px;
    top: 0px;
    z-index: 200;
    background: transparent;
  }
  .search-box form {
    background: transparent;
  }
  .search-box input[type="search"] {
      width: 30vw;
      max-width: 100px;
      font-size: 1em;
      text-align: right;
  }
}

@media (max-width: 999px) and (min-width: 801px) {
  .search-box {
    display: none !important;
  }
}

/* Keep only the badge styles for search results */
.search-result-type {
  background: #acb632;
  color: white;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 0.8em;
  font-weight: 500;
}

.search-result-flag {
  font-size: 1.2em;
}

.search-result-category {
  background: #f8f9fa;
  color: #406880;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 0.8em;
  border: 1px solid #dee2e6;
}
