
/* ===== Base Styles ===== */
.mpLocations, .mpSpecialties {
    float: left;
    margin-bottom: 20px;
}

.mpButton {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    clear: both;
    text-align: center;
}

.btnPullRight {
    float: right;
}

.mpLabel {
    font-family: var(--font-primary);
    font-weight: 500;
    font-size: 16px;
    color: #0062A9;
    padding-top: 5px;
}

.mpHomeSearch {
    background-color: rgba(255, 255, 255, 0.8);
    padding: 20px;
    border-radius: 5px;
    max-width: 90%;
    z-index: 9999;
}

.mpHomeSearch {
    z-index: 5 !important;
}

.mpWhen {
    width: 30%;
}

.mpCost {
    width: 40%;
}

.mpGroup {
    width: 30%;
}

.decrease, .increase {
    width: 20px;
    background: #fff;
    border-radius: 50%;
    text-align: center;
    cursor: pointer;
}

.mpCounters {
    display: inline-flex;
    padding-bottom: 10px;
}

.count {
    width: 100px;
    text-align: center;
}

.mpBudget {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.mpBudgetCircle {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    border: none;
    background-color: #fff;
    color: #333;
    font-size: 10px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mpBudgetCircle:focus {
    outline: none;
}

.mpBudgetCircle.selected {
    background-color: var(--primary);
}

.chosen-container-multi .chosen-choices .search-choice {
    background: #2aa3fb;
    color: #fff;
    border-radius: 20px;
    padding: 5px 10px;
    margin: 3px;
    display: inline-block;
    cursor: default;
}

.chosen-container-multi .chosen-choices .search-choice-close {
    margin-left: 5px;
    border-color: black;
}

.chosen-container-multi .chosen-choices .search-choice-close:hover {
    background: #2aa3fb;
}

.chosen-container-multi .chosen-drop {
    border-radius: 5px;
}

.chosen-container-multi .chosen-results li.active-result {
    margin: 5px;
    display: inline-block;
}

.chosen-container-multi .chosen-results li.active-result:hover {
    background: #f0f0f0;
}

.peeps-going {
    position: relative;
    width: 100%;
    min-width:160px;
}

.summary-info {
    display: block;
    padding: 10px;
    cursor: pointer;
    border: 1px solid #ccc;
    background-color: #fff;
}

.summary-info .arrow {
    float: right;
    transition: transform 0.2s ease;
}

.summary-info .arrow.open {
    transform: rotate(180deg);
}

.dd-content {
    position: absolute;
    top: 100%;
    left: 0;
    background: white;
    border: 1px solid #ccc;
    padding: 10px;
    z-index: 10;
}

.dd-content {
    border-top: none;
    padding: 10px;
}

span.mpWhenLabel {
    width: 25%;
    text-align: left;
    padding-top: 10px;
}

.dpwrap {
    position: relative;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    transition: 0.2s ease;
    padding: 0 4px;
    max-width:110px;
}

.dpwrap input[type="date"] {
    width: 100%;
    padding: 12px 8px;
    font-size: 16px;
    box-sizing: border-box;
}

.dpwrap input:focus + label,
.dpwrap input:not(:placeholder-shown) + label {
    top: -8px;
}

.mpGrid {
    display: grid;
    grid-template-columns: 1fr 1fr 110px 110px 165px 1fr 1fr;
    grid-template-rows: auto;
    gap: 0.5rem;
    grid-template-areas:
        "destination specialty start-date end-date passengers my-state lets-go";
}

.mpLocations { grid-area: destination; }
.mpSpecialties { grid-area: specialty; }
.mpStart { grid-area: start-date; }
.mpEnd { grid-area: end-date; }
.peeps-going { grid-area: passengers; }
.mpState {grid-area: my-state; }
.mpButton { grid-area: lets-go; }

.mpButton .TextButton.PrimaryButton {
    width: 100px;
    padding: 10px;
}

/* ===== Media Queries ===== */

@media (max-width: 768px) {
    .mpGrid {
      grid-template-columns: 1fr; /* Single column */
      grid-template-rows: repeat(7, auto); /* One row per item */
      grid-template-areas:
        "destination"
        "specialty"
        "start-date"
        "end-date"
        "passengers"
        "my-state"
        "lets-go";
      gap: 1rem; /* Slightly larger gap for readability */
      justify-items: stretch; /* Ensure items stretch to fill width */
      align-items: stretch;
    }
  
    /* Remove floats and ensure full width */
    .mpLocations,
    .mpSpecialties,
    .mpStart,
    .mpEnd,
    .peeps-going,
    .mpState,
    .mpButton {
      float: none; /* Override any float properties */
      width: 100%;
      max-width: 100%; /* Prevent exceeding container */
      margin-bottom: 10px; /* Space between stacked items */
    }
  
    /* Adjust datepicker inputs */
    #datepickerStart,
    #datepickerEnd {
      width: 100%;
      margin-left: 0; /* Remove left margin */
    }
  
    /* Center the button */
    .mpButton {
      text-align: center;
      max-width: 100%;
    }
  
    .btnPullRight {
      float: none;
      display: block;
      margin: 10px auto;
      max-width: fit-content;
    }
  
    /* Adjust Chosen container */
    .chosen-container {
      width: 100% !important;
      padding: 0;
    }
  
    /* Ensure dropdowns don’t overflow */
    .peeps-going,
    .dd-content {
      max-width: 100%;
    }
  
    /* Adjust datepicker wrapper */
    .dpwrap {
      left: 10;
      top: 0;
      transform: none; /* Remove transform for simplicity */
      padding: 10;
      max-width: 100%;
    }
  }
  
  /* Remove conflicting media queries */
  @media (max-width: 576px) {
    /* Only include necessary overrides */
    .chosen-container {
      width: 100% !important;
    }
  
    .mpButton {
      text-align: center;
    }
  }
  
  @media (max-width: 990px) {
    .mpHomeSearch {
      margin: 0 auto;
    }
  
    .mpLocations,
    .mpSpecialties {
      width: 100%;
      float: none;
    }
  
    #aecSearchInfo {
      width: unset;
    }
  }
  
  /* Optional: Tablet layout (between mobile and desktop) */
  @media (min-width: 769px) and (max-width: 1024px) {
    .mpGrid {
      grid-template-columns: repeat(3, 1fr);
      grid-template-rows: auto auto auto;
      grid-template-areas:
        "destination specialty specialty"
        "start-date end-date passengers"
        "lets-go lets-go lets-go";
      justify-items: center;
      align-items: center;
    }
  
    .mpLocations,
    .mpSpecialties,
    .mpButton {
      max-width: 300px;
      width: 100%;
    }
  
    .mpStart,
    .mpEnd,
    .peeps-going {
      max-width: 200px;
      width: 100%;
    }
  }

.glyphicon-chevron-left::before {
    content: '\f104'; /* Unicode for Font Awesome chevron-left */
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
  }
  
  .glyphicon-chevron-right::before {
    content: '\f105';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
  }

  .uib-datepicker-popup {
    font-size: 12px;
  }
  
  .uib-datepicker-popup .uib-day button,
  .uib-datepicker-popup .uib-month button,
  .uib-datepicker-popup .uib-year button {
    padding: 4px 6px;
    font-size: 12px;
  }
  
  .uib-datepicker-popup .uib-title {
    font-size: 13px;
  }