/* The results map of the search page (static/flatio/cdn/dist/js/shared/OfferMapController-DTq6O2rZ.js, Leaflet): price pills as pins, and a
   small card in the popup. Flatio's own colours: dark ink #33475b, yellow #f6c005. */
.search-map .map-container { min-height: 320px; }
.search-map .leaflet-container { width: 100%; height: 100%; min-height: 320px; font: inherit; }
.offer-pin { background: none; border: 0; }
.offer-pin__price { display: inline-block; transform: translate(-50%, -100%); white-space: nowrap; padding: 5px 10px; border-radius: 999px;
    background: #fff; color: #33475b; font-weight: 700; font-size: 14px; line-height: 1.2; border: 1px solid #33475b; box-shadow: 0 2px 6px rgba(20, 28, 38, .25); }
.offer-pin.is-favorite .offer-pin__price { border-color: #e0245e; }
.offer-pin.is-active .offer-pin__price, .offer-pin:hover .offer-pin__price { background: #f6c005; border-color: #33475b; transform: translate(-50%, -100%) scale(1.12); }
.leaflet-popup-content { margin: 0; }
.leaflet-popup-content-wrapper { padding: 0; overflow: hidden; border-radius: 12px; }
.offer-pin-popup { display: flex; flex-direction: column; gap: 3px; min-width: 220px; padding-bottom: 12px; color: #33475b; }
.offer-pin-popup img { display: block; width: 100%; height: 130px; object-fit: cover; }
.offer-pin-popup__title, .offer-pin-popup__meta, .offer-pin-popup__price, .offer-pin-popup__link { padding: 0 12px; }
.offer-pin-popup__title { margin-top: 8px; }
.offer-pin-popup__meta { color: #6b7c8d; font-size: 13px; }
.offer-pin-popup__price { font-weight: 700; }
.offer-pin-popup__link { font-weight: 600; text-decoration: underline; }

/* the search form: Flatio's saved form had a date and a guest picker beside the city; here the city takes the room */
#frm-searchForm-form .search-form__inputs { flex: 1 1 auto; min-width: 0; }
#frm-searchForm-form .search-form__city { flex: 1 1 auto; width: auto; max-width: none; }
#frm-searchForm-form .search-form__city input { width: 100%; }
.search-filters label { display: flex; flex-direction: column; gap: 2px; margin: 0; }
.search-form-wrapper { flex-wrap: wrap; }
.search-form-wrapper > .search-form { flex: 1 1 100%; }
.search-filters { flex: 0 0 100%; }

/* the invitation popup (static/js/search-invite.js) */
.invite-popup { position: fixed; inset: 0; z-index: 100000; display: flex; align-items: center; justify-content: center; padding: 16px; background: rgba(20, 28, 38, .55); }
.invite-popup[hidden] { display: none; }
body.invite-popup-open { overflow: hidden; }
.invite-popup__card { position: relative; width: 100%; max-width: 460px; max-height: calc(100vh - 32px); overflow-y: auto; padding: 28px 24px 24px; border-radius: 18px;
    background: #fff; color: #33475b; box-shadow: 0 20px 60px rgba(20, 28, 38, .35); }
.invite-popup__close { position: absolute; top: 8px; right: 12px; border: 0; background: none; font-size: 30px; line-height: 1; color: #6b7c8d; cursor: pointer; }
.invite-popup__title { margin: 0 24px 6px 0; font-size: 24px; line-height: 1.2; }
.invite-popup__text { margin: 0 0 16px; font-size: 16px; line-height: 1.5; }
.invite-popup__stay { display: block; margin-bottom: 18px; border: 1px solid #e2e8ee; border-radius: 14px; overflow: hidden; text-decoration: none; color: inherit; }
.invite-popup__stay img, .invite-popup__nophoto { display: block; width: 100%; height: 210px; object-fit: cover; background: #eef0f3; }
.invite-popup__info { display: flex; flex-direction: column; gap: 3px; padding: 12px 14px 14px; }
.invite-popup__specs { color: #6b7c8d; font-size: 14px; }
.invite-popup__price { margin-top: 4px; font-size: 20px; font-weight: 700; }
.invite-popup__price small { font-size: 14px; font-weight: 400; color: #6b7c8d; }
.invite-popup__button { display: block; width: 100%; padding: 16px 20px; font-size: 18px; text-align: center; box-sizing: border-box; }
.invite-popup__more { display: block; margin-top: 12px; text-align: center; font-size: 14px; color: #6b7c8d; }
.invite-popup__button { height: auto; min-height: 56px; line-height: 1.3; display: flex; align-items: center; justify-content: center; }
