/* APD 338 — final Airbnb-style mobile finish. */
@media (max-width: 767px) {
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open {
    --apd338-bg:#f7f7f7;
    --apd338-card:#ffffff;
    --apd338-line:#ececec;
    --apd338-text:#222222;
    --apd338-muted:#6d6d6d;
    --apd338-shadow:0 8px 24px rgba(0,0,0,.07), 0 1px 2px rgba(0,0,0,.03);
    --apd338-shadow-soft:0 4px 14px rgba(0,0,0,.055);
    --apd338-pink:#df2f61;
    background:var(--apd338-bg) !important;
  }

  /* topbar: restore Airbnb-like icon tabs */
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-topbar {
    height:112px !important;
    min-height:112px !important;
    padding:10px 72px 0 !important;
    background:var(--apd338-bg) !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-tabs {
    height:92px !important;
    min-height:92px !important;
    display:flex !important;
    align-items:flex-end !important;
    justify-content:center !important;
    gap:18px !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-tab {
    height:76px !important;
    min-height:76px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:6px !important;
    padding:0 0 8px !important;
    border-bottom-width:3px !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-tab > span {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:28px !important;
    height:28px !important;
    margin:0 !important;
    overflow:visible !important;
    font-size:24px !important;
    line-height:1 !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-tab strong {
    font-size:14.75px !important;
    line-height:1.08 !important;
    font-weight:530 !important;
    letter-spacing:-.02em !important;
    color:#6a6a6a !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-tab.is-active strong,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-tab[aria-current="page"] strong {
    color:var(--apd338-text) !important;
    font-weight:690 !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-close {
    top:17px !important;
    right:19px !important;
    width:48px !important;
    height:48px !important;
    border:1.5px solid #262626 !important;
    background:#fff !important;
    box-shadow:0 6px 18px rgba(0,0,0,.10) !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-close span {
    font-size:29px !important;
  }

  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-portal {
    padding-top:112px !important;
    background:var(--apd338-bg) !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-portal #apd5-search,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-portal #apd5-search.apd176-ready {
    height:calc(var(--apd186-shell-height,100dvh) - 112px) !important;
    padding:0 12px calc(104px + env(safe-area-inset-bottom,0px)) !important;
    gap:12px !important;
    background:var(--apd338-bg) !important;
  }

  /* collapsed rows */
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-portal #apd5-search > .apd5-search-field {
    border-radius:22px !important;
    background:var(--apd338-card) !important;
    box-shadow:var(--apd338-shadow-soft) !important;
    overflow:hidden !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-portal #apd5-search > .apd5-search-field > button:first-child {
    height:58px !important;
    min-height:58px !important;
    padding:0 22px !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-portal #apd5-search > .apd5-search-field > button:first-child > span:first-child {
    color:#757575 !important;
    font-size:16px !important;
    font-weight:520 !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd338-location-summary,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd336-location-summary,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd335-date-summary,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-guest-summary {
    display:block !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    max-width:72% !important;
    margin-left:auto !important;
    color:var(--apd338-text) !important;
    font-size:15.5px !important;
    line-height:1.15 !important;
    font-weight:660 !important;
    letter-spacing:-.025em !important;
    text-align:right !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search > [data-search-field="location"] > button:first-child > #apd5-location-summary,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search > [data-search-field="location"] > button:first-child > .apd223-location-value,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search > [data-search-field="location"] > button:first-child > .apd26-compact-summary {
    display:none !important;
  }

  /* cards */
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-portal #apd5-search > [data-search-panel] {
    border:1px solid rgba(0,0,0,.06) !important;
    border-radius:31px !important;
    background:var(--apd338-card) !important;
    box-shadow:var(--apd338-shadow) !important;
  }

  /* where panel */
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd5-location-panel {
    padding:26px 22px 28px !important;
    max-height:min(66dvh,640px) !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd5-location-panel > .apd5-panel-title > strong {
    font-size:28px !important;
    line-height:1.03 !important;
    font-weight:740 !important;
    letter-spacing:-.045em !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd5-panel-filter {
    height:58px !important;
    min-height:58px !important;
    border:1.35px solid #6f6f6f !important;
    border-radius:14px !important;
    margin-bottom:18px !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search #apd5-destination-filter {
    font-size:16px !important;
    font-weight:460 !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd26-destination-section-title,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd26-recent-destinations > strong {
    font-size:15px !important;
    font-weight:600 !important;
    color:#262626 !important;
    margin:0 0 10px !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd26-recent-destinations {
    margin:0 0 20px !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd26-recent-destination-list {
    display:grid !important;
    gap:8px !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd26-recent-destination,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd226-smart-results .apd219-smart-option,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-destination-list .apd5-destination-option,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd5-destination-option.is-nearby {
    min-height:72px !important;
    border-radius:18px !important;
    padding:8px 10px !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd338-synth-recent {
    background:#fafafa !important;
    box-shadow:inset 0 0 0 1px #f0f0f0 !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd338-synth-recent > span,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd26-recent-destination > span,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd219-smart-option > span:first-child,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-destination-list .apd5-destination-option > span:first-child {
    width:60px !important;
    height:60px !important;
    border-radius:16px !important;
    box-shadow:inset 0 0 0 1px rgba(0,0,0,.02) !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd338-synth-recent strong,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd26-recent-destination strong,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd219-smart-option strong,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-destination-list .apd5-destination-option strong {
    font-size:17px !important;
    font-weight:700 !important;
    letter-spacing:-.03em !important;
    color:var(--apd338-text) !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd338-synth-recent small,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd26-recent-destination small,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd219-smart-option small,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-destination-list .apd5-destination-option small {
    font-size:14px !important;
    line-height:1.24 !important;
    color:#6e6e6e !important;
  }

  /* dates */
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd5-date-panel {
    padding:24px 22px 14px !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd5-date-panel .apd5-panel-title > strong {
    font-size:28px !important;
    font-weight:740 !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-date-mode {
    height:56px !important;
    padding:4px !important;
    border-radius:999px !important;
    background:#ececec !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-date-mode button {
    height:48px !important;
    border-radius:999px !important;
    font-size:15.5px !important;
    font-weight:620 !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd5-calendar-month h3 {
    margin:12px 0 14px !important;
    font-size:18px !important;
    font-weight:680 !important;
    letter-spacing:-.02em !important;
    text-transform:none !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd5-calendar-weekdays > * {
    font-size:12.5px !important;
    font-weight:600 !important;
    color:#7a7a7a !important;
  }

  /* tolerance pills on exact dates */
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-date-tolerance,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-exact-options,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-flexibility-rail {
    padding-top:10px !important;
    gap:10px !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-date-tolerance::-webkit-scrollbar,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-exact-options::-webkit-scrollbar,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-flexibility-rail::-webkit-scrollbar {
    display:none !important;
  }

  /* flexible */
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-flexible-duration,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-flexible-length,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-flex-duration {
    gap:12px !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-flexible-duration::-webkit-scrollbar,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-flexible-length::-webkit-scrollbar,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-flex-duration::-webkit-scrollbar {
    display:none !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-flexible-duration button,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-flexible-length button,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd15-flex-duration button {
    min-height:48px !important;
    border-radius:999px !important;
    padding:0 22px !important;
    font-size:14.5px !important;
    font-weight:600 !important;
    white-space:nowrap !important;
  }

  /* guests */
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd5-guests-panel {
    padding:22px 22px 20px !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd5-guests-panel .apd5-panel-title > strong {
    font-size:28px !important;
    font-weight:740 !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd5-guest-row {
    padding:14px 0 !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd5-guest-row strong {
    font-size:17px !important;
    font-weight:690 !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd5-guest-row small,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open #apd5-search .apd5-guest-row a {
    font-size:14px !important;
    color:#6d6d6d !important;
  }

  /* footer */
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer {
    background:transparent !important;
    padding:0 20px calc(14px + env(safe-area-inset-bottom,0px)) !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer::before,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer::after,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-reset::before,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-reset::after,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-primary::before,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-primary::after {
    content:none !important;
    display:none !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-reset {
    padding:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    border:0 !important;
    color:#202020 !important;
    font-size:17px !important;
    font-weight:650 !important;
    letter-spacing:-.02em !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-primary {
    min-width:0 !important;
    height:68px !important;
    border:0 !important;
    border-radius:26px !important;
    padding:0 34px !important;
    box-shadow:0 10px 22px rgba(0,0,0,.12) !important;
    background:#232323 !important;
    color:#fff !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:12px !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-primary .apd176-footer-label,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-primary .apd328-footer-label {
    font-size:17px !important;
    font-weight:680 !important;
    letter-spacing:-.02em !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-primary.apd338-next-step {
    background:#232323 !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-primary.apd338-final-step {
    background:var(--apd338-pink) !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-primary.apd338-next-step .apd176-footer-icon,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-primary.apd338-next-step .apd328-footer-icon {
    display:none !important;
  }
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-primary.apd338-final-step .apd176-footer-icon,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-primary.apd338-final-step .apd328-footer-icon {
    display:flex !important;
  }

  /* finer premium response */
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd186-search-tab:active,
  html body.apd338-mobile-airbnb-finish.apd186-search-modal-open .apd176-mobile-footer .apd176-footer-primary:active {
    transform:scale(.985) !important;
  }
}
