/* =========================
   Modern Job Filters Design
   All rules with !important
   ========================= */

.job_filters,
.job_filters * {
  box-sizing: border-box !important;
}

.job_filters {
  background: none !important;
  /*border: 1px solid #e2e8f0 !important;*/
  /*border-radius: 24px !important;*/
  padding: 24px 0px !important;
  /*box-shadow: 0 12px 35px rgba(15, 23, 42, 0.08) !important;*/
  margin: 10px 0px 30px 0px !important;
}

/* 1) replace this block */
.job_filters .search_jobs {
  display: grid !important;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1.35fr) auto auto !important;
  gap: 16px !important;
  align-items: center !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
  border: 1px solid #eef2f7 !important;
  border-radius: 20px !important;
  padding: 18px !important;
}

/* 2) add this new block to hide only the top field labels */
.job_filters .search_jobs .search_keywords > label,
.job_filters .search_jobs .search_location > label {
  display: none !important;
}

.job_filters .search_jobs:before{
    display:none;
}

.job_filters .search_jobs > div {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
}

.job_filters .search_jobs > div[style*="clear"] {
  display: none !important;
}

.job_filters .search_keywords,
.job_filters .search_location {
  min-width: 0 !important;
}

.job_filters label {
  display: block !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  margin: 0 0 8px !important;
  letter-spacing: 0.2px !important;
}

.job_filters input[type="text"],
.job_filters input[type="search"],
.job_filters input[type="email"],
.job_filters input[type="number"],
.job_filters select,
.job_filters textarea {
  width: 100% !important;
  height: 52px !important;
  padding: 0 16px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  color: #0f172a !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  box-shadow: none !important;
  outline: none !important;
  transition: all 0.22s ease !important;
}

.job_filters input[type="text"]::placeholder,
.job_filters input[type="search"]::placeholder,
.job_filters input[type="email"]::placeholder,
.job_filters textarea::placeholder {
  color: #94a3b8 !important;
}

.job_filters input[type="text"]:focus,
.job_filters input[type="search"]:focus,
.job_filters input[type="email"]:focus,
.job_filters input[type="number"]:focus,
.job_filters select:focus,
.job_filters textarea:focus {
  outline: none !important;
  border-color: rgba(37, 99, 235, 0.45) !important;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.10) !important;
  background: #ffffff !important;
}

.job_filters .search_remote_position {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  min-height: 52px !important;
  padding: 0 16px !important;
  /*background: #ffffff !important;*/
  /*border: 1px solid #e2e8f0 !important;*/
  border-radius: 14px !important;
  white-space: nowrap !important;
}

.job_filters .search_remote_position input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  accent-color: #2563eb !important;
  cursor: pointer !important;
}

.job_filters .search_remote_position label,
.job_filters #remote_position_label {
  margin: 0 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  cursor: pointer !important;
  display: inline-block !important;
}

/* 3) replace this block */
.job_filters .search_submit {
  grid-column: auto !important;
  width: auto !important;
}

/* 4) replace this block */
.job_filters .search_submit input[type="submit"] {
  width: 140px !important;
  min-width: 140px !important;
  max-width: 140px !important;
  height: 52px !important;
  padding: 0 24px !important;
  border: none !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2px !important;
  cursor: pointer !important;
  box-shadow: 0 10px 25px rgba(37, 99, 235, 0.22) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease !important;
}

.job_filters .search_submit input[type="submit"]:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 14px 30px rgba(37, 99, 235, 0.28) !important;
}

.job_filters .search_submit input[type="submit"]:active {
  transform: translateY(0) !important;
}

.job_filters .job_types {
  list-style: none !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
}

.job_filters .job_types li {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  float: none !important;
}

.job_filters .job_types li label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 12px 16px !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 999px !important;
  color: #0f172a !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.job_filters .job_types li label:hover {
  border-color: #cbd5e1 !important;
  transform: translateY(-1px) !important;
}

.job_filters .job_types input[type="checkbox"] {
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  accent-color: #2563eb !important;
  cursor: pointer !important;
}

@supports selector(.job_filters .job_types li label:has(input:checked)) {
  .job_filters .job_types li label:has(input:checked) {
    background: rgba(37, 99, 235, 0.08) !important;
    border-color: rgba(37, 99, 235, 0.35) !important;
    color: #1d4ed8 !important;
    box-shadow: inset 0 0 0 1px rgba(37, 99, 235, 0.06) !important;
  }
}

.job_filters .showing_jobs {
  display: none !important;
}

.job_filters .showing_jobs span:empty {
  display: none !important;
}

.job_filters .showing_jobs .rss_link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 10px 14px !important;
  border-radius: 999px !important;
  border: 1px solid #fed7aa !important;
  background: #fff7ed !important;
  color: #c2410c !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

.job_filters .showing_jobs .rss_link:hover {
  background: #ffedd5 !important;
  border-color: #fdba74 !important;
}

.job_filters > input[type="hidden"] {
  display: none !important;
}

.job-manager-form p{
    text-align: end !important;
}


@media (max-width: 1100px) {
  .job_filters .search_jobs {
    grid-template-columns: 1fr 1fr !important;
  }

  .job_filters .search_remote_position {
    grid-column: 1 / -1 !important;
  }

  .job_filters .search_submit {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }

  .job_filters .search_submit input[type="submit"] {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

@media (max-width: 767px) {
  .job_filters {
    padding: 16px !important;
    border-radius: 18px !important;
  }
  
  .job_filters .search_jobs {
    grid-template-columns: 1fr !important;
  }

  .job_filters .search_remote_position,
  .job_filters .search_submit {
    grid-column: auto !important;
  }

  .job_filters .search_jobs {
    grid-template-columns: 1fr !important;
    padding: 14px !important;
    border-radius: 16px !important;
  }

  .job_filters input[type="text"],
  .job_filters input[type="search"],
  .job_filters input[type="email"],
  .job_filters input[type="number"],
  .job_filters select,
  .job_filters textarea,
  .job_filters .search_remote_position,
  .job_filters .search_submit input[type="submit"] {
    height: 48px !important;
  }

  .job_filters .job_types {
    gap: 10px !important;
  }

  .job_filters .job_types li {
    width: 100% !important;
  }

  .job_filters .job_types li label {
    width: 100% !important;
    justify-content: flex-start !important;
    border-radius: 14px !important;
  }

  .job_filters .showing_jobs {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
}




/* =========================
   Modern Job Filters Design
   Clean + Scoped Version
   Structure/design unchanged
   ========================= */

.job_filters,
.job_filters * {
  box-sizing: border-box !important;
}

.job_filters {
  background: none !important;
  padding: 24px 0 !important;
  margin: 10px 0 30px 0 !important;
}

/* Main search row: Keywords + Location + Category + Remote */
.job_filters .search_jobs {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.15fr) minmax(0, 1.15fr) max-content !important;
  gap: 16px !important;
  align-items: center !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
  border: 1px solid #eef2f7 !important;
  border-radius: 20px !important;
  padding: 18px !important;
  overflow: visible !important;
}

.job_filters .search_jobs::before {
  display: none !important;
}

.job_filters .search_jobs > div {
  float: none !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.job_filters .search_jobs > div[style*="clear"] {
  display: none !important;
}

/* Hide top labels only for keyword/location */
.job_filters .search_jobs .search_keywords > label,
.job_filters .search_jobs .search_location > label {
  display: none !important;
}

.job_filters label {
  display: block !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  margin: 0 0 8px !important;
  letter-spacing: 0.2px !important;
  border: none !important;
}

/* Inputs */
.job_filters input[type="text"],
.job_filters input[type="search"],
.job_filters input[type="email"],
.job_filters input[type="number"],
.job_filters select,
.job_filters textarea {
  width: 100% !important;
  height: 52px !important;
  padding: 0 16px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  color: #0f172a !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  box-shadow: none !important;
  outline: none !important;
  transition: all 0.22s ease !important;
}

.job_filters input[type="text"]::placeholder,
.job_filters input[type="search"]::placeholder,
.job_filters input[type="email"]::placeholder,
.job_filters textarea::placeholder {
  color: #94a3b8 !important;
}

.job_filters input[type="text"]:focus,
.job_filters input[type="search"]:focus,
.job_filters input[type="email"]:focus,
.job_filters input[type="number"]:focus,
.job_filters select:focus,
.job_filters textarea:focus {
  outline: none !important;
  border-color: rgba(37, 99, 235, 0.45) !important;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.10) !important;
  background: #ffffff !important;
}

/* Remote checkbox */
.job_filters .search_remote_position {
  width: auto !important;
  min-width: max-content !important;
  max-width: max-content !important;
  min-height: 52px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  padding: 0 16px !important;
  border-radius: 14px !important;
  white-space: nowrap !important;
}

.job_filters .search_remote_position input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  accent-color: #2563eb !important;
  cursor: pointer !important;
}

.job_filters .search_remote_position label,
.job_filters #remote_position_label {
  margin: 0 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  cursor: pointer !important;
  display: inline-block !important;
}

/* Search submit if exists */
.job_filters .search_submit {
  grid-column: auto !important;
  width: auto !important;
  padding-top: 0 !important;
}

.job_filters .search_submit input[type="submit"] {
  width: 140px !important;
  min-width: 140px !important;
  max-width: 140px !important;
  height: 52px !important;
  padding: 0 24px !important;
  border: none !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2px !important;
  cursor: pointer !important;
  box-shadow: 0 10px 25px rgba(37, 99, 235, 0.22) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease !important;
}

.job_filters .search_submit input[type="submit"]:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 14px 30px rgba(37, 99, 235, 0.28) !important;
}

/* Job type filters */
.job_filters .job_types {
  list-style: none !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
}

.job_filters .job_types li {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  float: none !important;
}

.job_filters .job_types li label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 12px 16px !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 999px !important;
  color: #0f172a !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.job_filters .job_types li label:hover {
  border-color: #cbd5e1 !important;
  transform: translateY(-1px) !important;
}

.job_filters .job_types input[type="checkbox"] {
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  accent-color: #2563eb !important;
  cursor: pointer !important;
}

@supports selector(.job_filters .job_types li label:has(input:checked)) {
  .job_filters .job_types li label:has(input:checked) {
    background: rgba(37, 99, 235, 0.08) !important;
    border-color: rgba(37, 99, 235, 0.35) !important;
    color: #1d4ed8 !important;
    box-shadow: inset 0 0 0 1px rgba(37, 99, 235, 0.06) !important;
  }
}

.job_filters .showing_jobs {
  display: none !important;
}

.job_filters > input[type="hidden"] {
  display: none !important;
}

.job-manager-form p {
  text-align: end !important;
}

/* =========================
   Select2 Category Field
   Scoped only to job filters
   ========================= */

.job_filters .search_jobs .search_categories {
  padding-top: 0 !important;
  min-width: 0 !important;
  width: 100% !important;
}

.job_filters .search_jobs .search_categories .select2-container {
  width: 100% !important;
  height: 52px !important;
  min-width: 0 !important;
}

.job_filters .search_jobs .search_categories .select2-selection--single {
  width: 100% !important;
  height: 52px !important;
  min-height: 52px !important;
  padding: 0 16px 0 16px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  color: #0f172a !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  box-shadow: none !important;
  outline: none !important;
  display: flex !important;
  align-items: center !important;
  transition: all 0.22s ease !important;
}

.job_filters .search_jobs .search_categories .select2-selection__rendered {
  width: 100% !important;
  padding: 0 !important;
  line-height: 52px !important;
  color: #818db1cf !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.job_filters .search_jobs .search_categories .select2-selection__placeholder {
  color: #818db1cf !important;
}

.job_filters .search_jobs .search_categories .select2-selection__arrow {
  height: 52px !important;
  width: 38px !important;
  right: 8px !important;
  top: 0 !important;
}

/* Hide arrow only after real category selection */
.job_filters .search_jobs .search_categories .select2-selection__rendered[title]:not([title=""]):not([title="Select Category"]):not([title="Any Category"]) + .select2-selection__arrow {
  display: none !important;
}

.job_filters .search_jobs .search_categories .select2-container--focus .select2-selection--single,
.job_filters .search_jobs .search_categories .select2-container--open .select2-selection--single {
  border-color: #b8c7ff !important;
  box-shadow: 0 0 0 4px rgba(36, 71, 255, 0.08) !important;
}

/* Select2 dropdown design */
.select2-container--default .select2-dropdown {
  border: 1px solid #dbe7ff !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.14) !important;
  overflow: hidden !important;
  z-index: 999999 !important;
}

.select2-container--default .select2-dropdown--below {
  border-top: 1px solid #dbe7ff !important;
  border-top-left-radius: 16px !important;
  border-top-right-radius: 16px !important;
}

.select2-container--default .select2-dropdown--above {
  border-bottom: 1px solid #dbe7ff !important;
  border-bottom-left-radius: 16px !important;
  border-bottom-right-radius: 16px !important;
}

.select2-container--default .select2-results > .select2-results__options {
  max-height: 260px !important;
  overflow-y: auto !important;
  padding: 8px !important;
}

.select2-container--default .select2-results__option {
  padding: 12px 14px !important;
  margin: 2px 0 !important;
  border-radius: 12px !important;
  color: #0f172a !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
  background: rgba(37, 99, 235, 0.10) !important;
  color: #1d4ed8 !important;
}

.select2-container--default .select2-results__option[aria-selected="true"],
.select2-container--default .select2-results__option[data-selected="true"] {
  background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
  color: #ffffff !important;
  font-weight: 800 !important;
}

.select2-container--default .select2-search--dropdown {
  padding: 8px 8px 4px !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
  height: 44px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  padding: 0 14px !important;
  outline: none !important;
  color: #0f172a !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field:focus {
  border-color: rgba(37, 99, 235, 0.45) !important;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.10) !important;
}

/* Location autocomplete dropdown */
.ui-autocomplete.mnj-location-autocomplete-menu {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
  z-index: 999999 !important;
}

.ui-autocomplete.mnj-location-autocomplete-menu .ui-menu-item {
  width: 100% !important;
  box-sizing: border-box !important;
}

.ui-autocomplete.mnj-location-autocomplete-menu .ui-menu-item-wrapper {
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 11px 14px !important;
  border-radius: 10px !important;
}



/* Prevent category select shift before Select2 loads */
.job_filters .search_jobs .search_categories select.mnj-category-select,
.job_filters .search_jobs .search_categories select#search_categories {
  width: 100% !important;
  height: 52px !important;
  min-height: 52px !important;
  padding: 0 42px 0 16px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  background-color: #ffffff !important;
  color: #818db1cf !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 52px !important;
  box-shadow: none !important;
  outline: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background-image: linear-gradient(45deg, transparent 50%, #818db1cf 50%), linear-gradient(135deg, #818db1cf 50%, transparent 50%) !important;
  background-position: calc(100% - 18px) 23px, calc(100% - 13px) 23px !important;
  background-size: 5px 5px, 5px 5px !important;
  background-repeat: no-repeat !important;
}

/* After Select2 loads, keep same color/position */
.job_filters .search_jobs .search_categories .select2-selection--single {
  height: 52px !important;
  min-height: 52px !important;
  padding: 0 16px 0 16px !important;
  display: flex !important;
  align-items: center !important;
}

.job_filters .search_jobs .search_categories .select2-selection__rendered {
  color: #818db1cf !important;
  line-height: 52px !important;
  padding: 0 !important;
}

.job_filters .search_jobs .search_categories .select2-selection__arrow {
  height: 52px !important;
  width: 38px !important;
  right: 8px !important;
  top: 0 !important;
}


/* =========================
   MyNextJobs - Professional Job List
   LinkedIn / Indeed style
   Keep default WP Job Manager positions
   ========================= */

ul.job_listings {
  list-style: none !important;
  margin: 26px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

/* Main row */
ul.job_listings li.job_listing {
  position: relative !important;
  list-style: none !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 12px !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04) !important;
  overflow: hidden !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease !important;
}

/* Professional hover */
ul.job_listings li.job_listing:hover {
  border-color: #b9c7e8 !important;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.08) !important;
  background: #ffffff !important;
  transform: none !important;
}

/* Subtle left accent */
ul.job_listings li.job_listing::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 3px !important;
  height: 100% !important;
  background: transparent !important;
  transition: background 0.18s ease !important;
}

ul.job_listings li.job_listing:hover::before {
  background: #0a66c2 !important;
}

/* Keep original layout. Do not use grid/flex here */
ul.job_listings li.job_listing a {
  display: block !important;
  min-height: 86px !important;
  padding-top: 18px !important;
  padding-bottom: 18px !important;
  padding-left: 1em !important;
  padding-right: 1em !important;
  border: 0 !important;
  text-decoration: none !important;
  background: transparent !important;
  color: inherit !important;
}

/* Logo - clean corporate style */
ul.job_listings li.job_listing img.company_logo {
  width: 48px !important;
  height: 48px !important;
  max-width: 48px !important;
  min-width: 48px !important;
  object-fit: contain !important;
  padding: 6px !important;
  margin-top: 0 !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  box-shadow: none !important;
}

/* Title area */
ul.job_listings li.job_listing .position {
  padding-top: 0 !important;
}

ul.job_listings li.job_listing .position h3 {
  margin: 0 0 5px !important;
  padding: 0 !important;
  color: #111827 !important;
  font-size: 15.5px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
}

ul.job_listings li.job_listing:hover .position h3 {
  color: #0a66c2 !important;
}

/* Company + tagline */
ul.job_listings li.job_listing .company {
  color: #6b7280 !important;
  font-size: 13.5px !important;
  line-height: 1.45 !important;
}

ul.job_listings li.job_listing .company strong {
  color: #4b5563 !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
}

ul.job_listings li.job_listing .company .tagline {
  color: #6b7280 !important;
  font-size: 13.5px !important;
  font-weight: 400 !important;
}

/* Location - professional muted */
ul.job_listings li.job_listing .location {
  color: #6b7280 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  font-weight: 500 !important;
}

ul.job_listings li.job_listing .location small {
  color: #0a66c2 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

/* Right meta */
ul.job_listings li.job_listing ul.meta {
  margin: 0 !important;
  padding: 0 !important;
  color: #6b7280 !important;
  text-align: right !important;
}

/* Remove childish pill look */
ul.job_listings li.job_listing ul.meta li {
  margin: 0 0 5px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Job type - LinkedIn style blue text, not bright green */
ul.job_listings li.job_listing ul.meta li.job-type {
  color: #0a66c2 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  background: transparent !important;
}

/* Posted date */
ul.job_listings li.job_listing ul.meta li.date,
ul.job_listings li.job_listing ul.meta li.date time {
  color: #6b7280 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

/* Divider style between rows if plugin adds borders */
ul.job_listings li.job_listing + li.job_listing {
  border-top: 1px solid #e5e7eb !important;
}

/* Load more button - professional */
a.load_more_jobs,
.job_manager .load_more_jobs,
.load_more_jobs {
  display: flex !important;
  width: 190px !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px !important;
  padding: 0 22px !important;
  margin: 22px auto 0 !important;
  border: 1px solid #0a66c2 !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: #0a66c2 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease !important;
}

a.load_more_jobs strong,
.job_manager .load_more_jobs strong,
.load_more_jobs strong {
  color: inherit !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

a.load_more_jobs:hover,
.job_manager .load_more_jobs:hover,
.load_more_jobs:hover {
  background: #0a66c2 !important;
  color: #ffffff !important;
  border-color: #0a66c2 !important;
  transform: none !important;
}

/* Mobile clean */
@media (max-width: 767px) {
  ul.job_listings li.job_listing {
    border-radius: 10px !important;
    margin-bottom: 12px !important;
  }

  ul.job_listings li.job_listing a {
    min-height: 90px !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }

  ul.job_listings li.job_listing img.company_logo {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
  }

  ul.job_listings li.job_listing .position h3 {
    font-size: 15px !important;
  }

  ul.job_listings li.job_listing .company,
  ul.job_listings li.job_listing .company strong,
  ul.job_listings li.job_listing .company .tagline,
  ul.job_listings li.job_listing .location,
  ul.job_listings li.job_listing ul.meta li {
    font-size: 13px !important;
  }
}


/* Hide arrow only when real category selected */
.job_filters .search_jobs .search_categories .select2-selection__rendered[title]:not([title=""]):not([title="Select Category"]):not([title="Any Category"]) + .select2-selection__arrow {
  display: none !important;
}

/* Responsive */
@media (max-width: 1100px) {
  .job_filters .search_jobs {
    grid-template-columns: 1fr 1fr !important;
  }

  .job_filters .search_remote_position {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    justify-content: flex-start !important;
  }

  .job_filters .search_submit {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }

  .job_filters .search_submit input[type="submit"] {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

@media (max-width: 767px) {
  .job_filters {
    padding: 16px !important;
    border-radius: 18px !important;
  }

  .job_filters .search_jobs {
    grid-template-columns: 1fr !important;
    padding: 14px !important;
    border-radius: 16px !important;
  }

  .job_filters input[type="text"],
  .job_filters input[type="search"],
  .job_filters input[type="email"],
  .job_filters input[type="number"],
  .job_filters select,
  .job_filters textarea,
  .job_filters .search_remote_position,
  .job_filters .search_submit input[type="submit"],
  .job_filters .search_jobs .search_categories .select2-container,
  .job_filters .search_jobs .search_categories .select2-selection--single {
    height: 48px !important;
    min-height: 48px !important;
  }

  .job_filters .search_jobs .search_categories .select2-selection__rendered {
    line-height: 48px !important;
  }

  .job_filters .search_jobs .search_categories .select2-selection__arrow {
    height: 48px !important;
  }

  .job_filters .job_types {
    gap: 10px !important;
  }

  .job_filters .job_types li {
    width: 100% !important;
  }

  .job_filters .job_types li label {
    width: 100% !important;
    justify-content: flex-start !important;
    border-radius: 14px !important;
  }

  .job_filters .showing_jobs {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
}



/* Fix job listing logo overlap with title */
ul.job_listings li.job_listing a {
  position: relative !important;
}

ul.job_listings li.job_listing img.company_logo {
  position: absolute !important;
  left: 18px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  max-width: 46px !important;
  margin: 0 !important;
  float: none !important;
  object-fit: contain !important;
  z-index: 2 !important;
}

ul.job_listings li.job_listing a div.position,
ul.job_listings li.job_listing a .position {
  padding-left: 76px !important;
  padding-right: 12px !important;
  width: 55% !important;
  box-sizing: border-box !important;
}


@media (max-width: 767px) {
  ul.job_listings li.job_listing img.company_logo {
    left: 16px !important;
    top: 18px !important;
    transform: none !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
  }

  ul.job_listings li.job_listing a div.position,
  ul.job_listings li.job_listing a .position {
    padding-left: 68px !important;
    width: 100% !important;
  }
}