/* NEXTFLY_HOTEL_FAV_SHARE_V1 - heart (top right of the photo) + share (bottom right of the photo). */
.nf-fs-btn{position:absolute;z-index:3;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;cursor:pointer;
  background:rgba(255,255,255,.94);color:#1b1f6b;box-shadow:0 2px 8px rgba(15,23,42,.25);-webkit-tap-highlight-color:transparent;
  border:0;padding:0;margin:0;transition:transform .15s ease}
.nf-fs-btn:active{transform:scale(.9)}
.nf-fs-btn svg{width:20px;height:20px;display:block}
.nf-fs-btn.nf-fs-fav svg{fill:none;stroke:currentColor;stroke-width:2;transition:fill .15s ease}
.nf-fs-btn.nf-fs-fav.on{color:var(--tenant-primary,#d4006e)}
.nf-fs-btn.nf-fs-fav.on svg{fill:currentColor}
.nf-fs-btn.nf-fs-share svg{fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.nf-fs-btn:focus-visible{outline:2px solid var(--tenant-primary,#d4006e);outline-offset:2px}
/* results card: at the inner right edge of the photo, before the fading tiles */
.nf-hmr-img .nf-fs-fav{top:10px;right:16%}
.nf-hmr-img .nf-fs-share{bottom:10px;right:16%}
/* hotel page (phone hero + desktop hero image) */
.nfd-hero .nf-fs-fav,.nf-fs-wrap .nf-fs-fav{top:12px;right:12px}
.nfd-hero .nf-fs-share,.nf-fs-wrap .nf-fs-share{bottom:12px;right:12px}
/* NEXTFLY_HOTEL_HERO_DOTS_V1: the visible share icon sits 19px from the right/bottom edge - the counter mirrors it */
.nfd-hero .nfd-count{right:auto!important;left:19px!important;bottom:19px!important}
.nf-fs-wrap{position:relative}
/* favourites-only toggle in the results */
.nf-fs-favbar{display:inline-flex;align-items:center;gap:6px;margin:0 0 0 10px;vertical-align:middle;padding:5px 12px;border:1.5px solid #d9dcf0;border-radius:999px;background:#fff;
  font:inherit;font-size:13.5px;font-weight:800;color:#1b1f6b;cursor:pointer}
.nf-fs-favbar[hidden]{display:none}
.nf-fs-favbar svg{width:16px;height:16px;fill:var(--tenant-primary,#d4006e)}
.nf-fs-favbar.on{border-color:var(--tenant-primary,#d4006e);background:color-mix(in srgb,var(--tenant-primary,#d4006e) 9%,#fff)}
#nf-hmr-list.nf-favonly .nf-hmr-card:not(.is-fav){display:none!important}
/* toast + share menu (no Web Share API) */
.nf-fs-toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:3000;
  background:#111827;color:#fff;font-size:14px;font-weight:700;padding:10px 16px;border-radius:999px;transition:opacity .2s ease,transform .2s ease;white-space:nowrap}
.nf-fs-toast.on{opacity:1;transform:translate(-50%,0)}
.nf-fs-menu{position:fixed;z-index:3000;min-width:200px;background:#fff;border-radius:14px;box-shadow:0 14px 40px rgba(15,23,42,.28);padding:6px;display:flex;flex-direction:column}
.nf-fs-menu-t{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#667085;padding:8px 12px 4px}
.nf-fs-menu a{display:block;padding:11px 12px;border-radius:10px;font-size:15px;font-weight:700;color:#111827;text-decoration:none}
.nf-fs-menu a:hover{background:#f2f4f7}

/* NEXTFLY_HOTEL_FAV_SHARE_V2 (owner request 2026-10-14): no white circle - white outline icons only (shadow keeps them
   readable on light photos); the heart fills with the system colour when active; on the result cards both sit on
   the LEFT of the photo (heart top-left, share bottom-left). */
.nf-fs-btn{background:transparent!important;box-shadow:none!important;color:#fff!important;width:40px;height:40px;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.55)) drop-shadow(0 0 6px rgba(0,0,0,.25))}
.nf-fs-btn svg{width:27px;height:27px}
.nf-fs-btn.nf-fs-fav svg{stroke:#fff;stroke-width:2;fill:none}
.nf-fs-btn.nf-fs-fav.on svg{fill:var(--tenant-primary,#d4006e);stroke:#fff}
.nf-fs-btn.nf-fs-share svg{stroke:#fff;stroke-width:2}
.nf-hmr-img .nf-fs-fav{top:6px;left:6px;right:auto}
.nf-hmr-img .nf-fs-share{bottom:6px;left:6px;right:auto}
