/* APD 741 — final contact calendar, traveler sheet and public-detail cards. */

/* The selected range is one continuous band with circular endpoints. */
html body.apd741-release .apd91-date-dialog [data-apd91-heading] {
  max-width: 620px !important;
  color: #202124 !important;
  font-size: clamp(27px, 4vw, 38px) !important;
  line-height: 1.04 !important;
}
html body.apd741-release .apd91-date-dialog [data-apd91-instruction] {
  color: #6b6b6f !important;
  font-size: 15px !important;
}
html body.apd741-release .apd91-days {
  column-gap: 0 !important;
}
html body.apd741-release .apd91-days button.is-range {
  width: 100% !important;
  border-radius: 0 !important;
  background: #e6e6e7 !important;
}
html body.apd741-release .apd91-days button:is(.is-start,.is-end) {
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  color: #fff !important;
  background: #202124 !important;
}
html body.apd741-release .apd91-days button.is-temporary-unavailable {
  color: #d0d0d2 !important;
  background: transparent !important;
  text-decoration: line-through !important;
  pointer-events: none !important;
}

/* Traveler controls live above a plain dimmer, never underneath a blur layer. */
html body.apd741-release.apd728-guests-open .apd87-contact-page::after,
html body.apd741-release.apd741-travelers-open .apd87-contact-page::after {
  content: none !important;
  display: none !important;
  backdrop-filter: none !important;
}
.apd741-traveler-backdrop[hidden],
.apd741-traveler-panel[hidden] { display: none !important; }
.apd741-traveler-backdrop {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483000 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  background: rgba(16, 24, 40, .46) !important;
  backdrop-filter: none !important;
}
html body.apd741-release > .apd741-traveler-panel {
  position: fixed !important;
  inset: auto 0 0 0 !important;
  z-index: 2147483100 !important;
  display: block !important;
  visibility: visible !important;
  width: min(620px, 100%) !important;
  max-width: 620px !important;
  max-height: min(78dvh, 720px) !important;
  margin: 0 auto !important;
  padding: 22px 26px calc(22px + env(safe-area-inset-bottom)) !important;
  overflow: auto !important;
  opacity: 1 !important;
  filter: none !important;
  pointer-events: auto !important;
  border: 1px solid rgba(255,255,255,.78) !important;
  border-radius: 28px 28px 0 0 !important;
  color: #202124 !important;
  background: radial-gradient(circle at 12% 0,rgba(222,185,101,.14),transparent 30%),linear-gradient(180deg,#fff,#f7faff) !important;
  box-shadow: 0 -30px 80px rgba(14,34,61,.28),inset 0 1px 0 #fff !important;
  transform: none !important;
}
html body.apd741-release > .apd741-traveler-panel .apd87-guest-row {
  display: flex !important;
  min-height: 82px !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 14px 0 !important;
  border-bottom: 1px solid #eceef2 !important;
}
html body.apd741-release > .apd741-traveler-panel .apd87-guest-copy strong { display:block !important; color:#202124 !important; font-size:17px !important; font-weight:820 !important; }
html body.apd741-release > .apd741-traveler-panel .apd87-guest-copy span { color:#6f7379 !important; font-size:13px !important; }
html body.apd741-release > .apd741-traveler-panel .apd87-guest-counter { display:flex !important; align-items:center !important; gap:13px !important; }
html body.apd741-release > .apd741-traveler-panel .apd87-guest-counter button { width:42px !important; height:42px !important; border:1px solid #abb0b8 !important; border-radius:50% !important; color:#202124 !important; background:#fff !important; font-size:23px !important; }
html body.apd741-release > .apd741-traveler-panel .apd87-guest-counter button:disabled { opacity:.28 !important; }
html body.apd741-release > .apd741-traveler-panel .apd87-guest-counter output { min-width:22px !important; color:#202124 !important; font-size:17px !important; font-weight:760 !important; text-align:center !important; }
html body.apd741-release > .apd741-traveler-panel .apd87-guests-capacity { margin:16px 0 0 !important; color:#656970 !important; font-size:13px !important; line-height:1.45 !important; }
html body.apd741-release > .apd741-traveler-panel .apd87-guests-close { display:block !important; width:100% !important; min-height:52px !important; margin:18px 0 0 !important; border:0 !important; border-radius:15px !important; color:#fff !important; background:#202124 !important; font-size:16px !important; font-weight:820 !important; }
html body.apd741-release.apd741-travelers-open { overflow: hidden !important; }

/* Listing protection and direct-message artwork share one deliberate scale. */
html body.single-listing.apd741-release .apd647-host-info .apd177-host-note {
  grid-template-columns: 88px minmax(0,1fr) !important;
  min-height: 132px !important;
  gap: 18px !important;
  padding: 18px !important;
}
html body.single-listing.apd741-release .apd647-host-info .apd177-host-note-icon,
html body.single-listing.apd741-release .apd647-host-info .apd177-host-note-icon > img {
  width: 88px !important;
  height: 88px !important;
  max-width: 88px !important;
  max-height: 88px !important;
}
html body.single-listing.apd741-release .apd87-host-contact-button {
  min-height: 112px !important;
  gap: 18px !important;
  padding: 13px 18px 13px 12px !important;
  border: 1px solid rgba(69,88,116,.16) !important;
  border-radius: 26px !important;
  background: radial-gradient(circle at 3% 0,rgba(225,185,92,.15),transparent 36%),linear-gradient(145deg,#fff,#eef5ff) !important;
  box-shadow: 0 20px 42px rgba(19,41,70,.13),inset 0 1px 0 #fff !important;
}
html body.single-listing.apd741-release .apd87-host-contact-icon { flex-basis:88px !important; width:88px !important; height:88px !important; }
html body.single-listing.apd741-release .apd87-host-contact-arrow { display:grid !important; place-items:center !important; flex:0 0 48px !important; width:48px !important; height:48px !important; border:1px solid rgba(25,49,82,.14) !important; border-radius:50% !important; color:#112a4d !important; background:#fff !important; box-shadow:0 9px 18px rgba(24,47,79,.10) !important; font-size:24px !important; }

/* Experience detail: the same visual hierarchy as an accommodation. */
html body.single-experience.apd741-release .apd703-meta-stack {
  display: grid !important;
  gap: 12px !important;
  margin-top: 18px !important;
  border: 0 !important;
}
html body.single-experience.apd741-release .apd703-meta-stack .apd391x-meta {
  display: grid !important;
  grid-template-columns: 78px minmax(0,1fr) !important;
  min-height: 108px !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 14px 17px !important;
  border: 1px solid rgba(31,50,78,.10) !important;
  border-radius: 23px !important;
  color: #15243b !important;
  background: radial-gradient(circle at 7% 0,rgba(255,255,255,.98),transparent 38%),linear-gradient(145deg,#fff,#f1f6fd) !important;
  box-shadow: 0 15px 34px rgba(24,47,79,.09),inset 0 1px 0 #fff !important;
  text-decoration: none !important;
}
html body.single-experience.apd741-release .apd703-meta-stack .apd391x-meta > img,
html body.single-experience.apd741-release .apd741-experience-host-avatar {
  display: block !important;
  width: 72px !important;
  height: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  position: relative !important;
}
html body.single-experience.apd741-release .apd703-meta-stack .apd391x-meta > img { object-fit: contain !important; filter:drop-shadow(0 10px 12px rgba(25,53,86,.17)) !important; }
html body.single-experience.apd741-release .apd741-experience-host-avatar > img { display:block !important; width:72px !important; height:72px !important; border:3px solid #fff !important; border-radius:50% !important; object-fit:cover !important; box-shadow:0 10px 23px rgba(20,39,65,.18) !important; }
html body.single-experience.apd741-release .apd741-experience-host-avatar .apd724-verified-badge { position:absolute !important; right:-7px !important; bottom:-7px !important; width:32px !important; height:32px !important; }
html body.single-experience.apd741-release .apd741-experience-host-avatar .apd724-verified-badge img { width:100% !important; height:100% !important; }
html body.single-experience.apd741-release .apd703-meta-stack .apd391x-meta strong { display:block !important; color:#17243a !important; font-size:17px !important; font-weight:850 !important; line-height:1.15 !important; }
html body.single-experience.apd741-release .apd703-meta-stack .apd391x-meta small { display:block !important; margin-top:5px !important; color:#697386 !important; font-size:13px !important; line-height:1.35 !important; }

html body.single-experience.apd741-release .apd703-activity {
  margin: 18px 0 !important;
  padding: 26px !important;
  border: 1px solid rgba(48,75,110,.12) !important;
  border-radius: 28px !important;
  background: radial-gradient(circle at 100% 0,rgba(210,226,255,.55),transparent 36%),radial-gradient(circle at 0 0,rgba(255,237,196,.40),transparent 34%),linear-gradient(145deg,#fff,#f5f9ff) !important;
  box-shadow: 0 22px 48px rgba(25,48,80,.10),inset 0 1px 0 #fff !important;
}
html body.single-experience.apd741-release .apd703-activity > h2 { color:#15243b !important; font-size:28px !important; }
html body.single-experience.apd741-release .apd703-activity .apd391x-rich { color:#536076 !important; }

html body.single-experience.apd741-release .apd703-contact > article {
  padding: 24px !important;
  border: 1px solid rgba(43,66,99,.12) !important;
  border-radius: 27px !important;
  background: radial-gradient(circle at 100% 0,rgba(213,228,255,.52),transparent 37%),linear-gradient(145deg,#fff,#f4f8ff) !important;
  box-shadow: 0 22px 48px rgba(25,48,80,.11),inset 0 1px 0 #fff !important;
}
html body.single-experience.apd741-release .apd703-contact-identity { gap:17px !important; }
html body.single-experience.apd741-release .apd703-contact-identity > .apd741-experience-host-avatar,
html body.single-experience.apd741-release .apd703-contact-identity > .apd741-experience-host-avatar > img { width:86px !important; height:86px !important; max-width:86px !important; flex-basis:86px !important; }
html body.single-experience.apd741-release .apd741-experience-profile-link { display:inline-flex !important; margin:-3px 0 16px !important; color:#18365e !important; font-size:13px !important; font-weight:850 !important; text-decoration:underline !important; text-underline-offset:3px !important; }
html body.single-experience.apd741-release .apd703-contact > article > button { min-height:54px !important; border-radius:16px !important; background:linear-gradient(135deg,#101b2e,#1b3458) !important; box-shadow:0 14px 25px rgba(15,34,61,.20) !important; font-size:15px !important; }
html body.single-experience.apd741-release .apd703-tools [data-apd-favorite],
html body.single-experience.apd741-release .apd703-tools [data-apd-favorite].is-favorite,
html body.single-experience.apd741-release .apd703-tools [data-apd-favorite][aria-pressed="true"] { color:#e51b62 !important; }
html body.single-experience.apd741-release .apd703-tools [data-apd-favorite] svg { width:27px !important; height:27px !important; fill:transparent !important; stroke:currentColor !important; stroke-width:1.9 !important; }
html body.single-experience.apd741-release .apd703-tools [data-apd-favorite].is-favorite svg,
html body.single-experience.apd741-release .apd703-tools [data-apd-favorite][aria-pressed="true"] svg { fill:#e51b62 !important; }

@media (max-width: 799px) {
  html body.apd741-release .apd91-date-dialog { max-height:92dvh !important; }
  html body.apd741-release .apd91-date-dialog [data-apd91-heading] { font-size:30px !important; }
  html body.apd741-release .apd91-date-pickers { margin-top:18px !important; }
  html body.apd741-release .apd91-days button { min-height:46px !important; height:46px !important; font-size:15px !important; }
  html body.apd741-release .apd91-days button:is(.is-start,.is-end) { width:46px !important; height:46px !important; }

  html body.single-listing.apd741-release .apd647-host-info .apd177-host-note { grid-template-columns:82px minmax(0,1fr) !important; min-height:132px !important; gap:14px !important; padding:16px 14px !important; }
  html body.single-listing.apd741-release .apd647-host-info .apd177-host-note-icon,
  html body.single-listing.apd741-release .apd647-host-info .apd177-host-note-icon > img { width:82px !important; height:82px !important; max-width:82px !important; max-height:82px !important; }

  html body.single-experience.apd741-release .apd703-experience { position:relative !important; padding-top:0 !important; }
  html body.single-experience.apd741-release .apd703-tools {
    position:absolute !important;
    top:calc(15px + env(safe-area-inset-top)) !important;
    left:14px !important;
    right:14px !important;
    z-index:10040 !important;
    display:grid !important;
    grid-template-columns:58px minmax(0,1fr) auto !important;
    min-height:58px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    backdrop-filter:none !important;
  }
  html body.single-experience.apd741-release .apd703-tool-title { display:none !important; }
  html body.single-experience.apd741-release .apd703-tools > div { display:flex !important; gap:12px !important; }
  html body.single-experience.apd741-release .apd703-tools .apd391x-back,
  html body.single-experience.apd741-release .apd703-tools button {
    display:grid !important;
    place-items:center !important;
    width:58px !important;
    min-width:58px !important;
    height:58px !important;
    min-height:58px !important;
    padding:0 !important;
    border:1px solid rgba(20,28,40,.10) !important;
    border-radius:50% !important;
    color:#17191d !important;
    background:rgba(255,255,255,.96) !important;
    box-shadow:0 8px 24px rgba(10,20,34,.19),inset 0 1px 0 #fff !important;
  }
  html body.single-experience.apd741-release .apd703-tools :is(a,button) > span { display:grid !important; place-items:center !important; width:28px !important; height:28px !important; }
  html body.single-experience.apd741-release .apd703-tools :is(a,button) > span svg { display:block !important; width:28px !important; height:28px !important; }
  html body.single-experience.apd741-release .apd703-gallery { margin-top:0 !important; }

  html body.single-experience.apd741-release .apd703-intro { padding-inline:0 !important; }
  html body.single-experience.apd741-release .apd703-meta-stack { gap:12px !important; margin-top:15px !important; }
  html body.single-experience.apd741-release .apd703-meta-stack .apd391x-meta { grid-template-columns:76px minmax(0,1fr) !important; min-height:106px !important; padding:14px !important; border-radius:22px !important; }
  html body.single-experience.apd741-release .apd703-meta-stack .apd391x-meta > img,
  html body.single-experience.apd741-release .apd741-experience-host-avatar,
  html body.single-experience.apd741-release .apd741-experience-host-avatar > img { width:70px !important; height:70px !important; min-width:70px !important; max-width:70px !important; }
  html body.single-experience.apd741-release .apd703-meta-stack .apd391x-meta strong { font-size:16px !important; }
  html body.single-experience.apd741-release .apd703-meta-stack .apd391x-meta small { font-size:12.5px !important; }
  html body.single-experience.apd741-release .apd703-activity { margin:18px 0 !important; padding:22px 20px !important; border-radius:24px !important; }
  html body.single-experience.apd741-release .apd703-activity > h2 { font-size:25px !important; }
  html body.single-experience.apd741-release .apd703-contact > article { padding:19px !important; border-radius:24px !important; }
  html body.single-experience.apd741-release .apd703-contact-identity > .apd741-experience-host-avatar,
  html body.single-experience.apd741-release .apd703-contact-identity > .apd741-experience-host-avatar > img { width:78px !important; height:78px !important; max-width:78px !important; flex-basis:78px !important; }
}

@media (max-width: 390px) {
  html body.apd741-release > .apd741-traveler-panel { padding-inline:20px !important; }
  html body.single-experience.apd741-release .apd703-tools { left:11px !important; right:11px !important; grid-template-columns:52px minmax(0,1fr) auto !important; }
  html body.single-experience.apd741-release .apd703-tools > div { gap:9px !important; }
  html body.single-experience.apd741-release .apd703-tools .apd391x-back,
  html body.single-experience.apd741-release .apd703-tools button { width:52px !important; min-width:52px !important; height:52px !important; min-height:52px !important; }
}
