.rp-google,.rp-site-plan{--rp-location-green:#193e32;--rp-location-muted:#59695e;color:var(--rp-location-green);font-family:inherit;min-width:0}.rp-google{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:32px;align-items:start}.rp-google a,.rp-site-plan a{color:var(--rp-location-green)}.rp-google-summary{margin-bottom:20px}.rp-google-summary p{margin:10px 0}.rp-google-summary strong{font-size:42px}.rp-google-attribution{font:400 16px Arial,sans-serif;color:#1f1f1f;white-space:nowrap}.rp-review-stars{color:#9b6400;letter-spacing:2px}.rp-google-cards{display:grid;gap:14px}.rp-google-card{padding:22px;border:1px solid #193e3222;border-radius:18px;background:#fffdf8}.rp-review-author{display:flex;align-items:center;gap:12px}.rp-review-author img{width:40px;height:40px;object-fit:cover;border-radius:50%}.rp-review-author a{font-weight:600}.rp-review-author small{display:block;color:var(--rp-location-muted)}.rp-google-card .rp-review-stars{margin:10px 0 6px}.rp-review-text{font-size:15px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 10px}.rp-review-source,.rp-google-note,.rp-google-card>small{font-size:13px}.rp-google-note{color:var(--rp-location-muted);margin:16px 0 10px}.rp-google-location{border-radius:22px;overflow:hidden;background:#fffdf8;border:1px solid #193e3222;position:sticky;top:110px}.rp-google-location iframe{border:0;width:100%;height:430px;display:block}.rp-google-address{padding:24px}.rp-google-address p{font-size:15px;margin:8px 0 18px}.rp-plan-tools{display:flex;gap:18px;justify-content:space-between;align-items:end;flex-wrap:wrap}.rp-plan-tools label{display:grid;gap:8px;flex:1;max-width:550px}.rp-plan-tools select{width:100%;max-width:100%;padding:12px;border:1px solid #193e3244;border-radius:10px;background:#fffdf8}.rp-site-plan button{font:inherit;color:var(--rp-location-green);cursor:pointer}.rp-plan-tools button,.rp-calendar-nav button{min-width:42px;min-height:42px;padding:8px 12px;border:1px solid #193e3233;border-radius:9px;background:#fffdf8}.rp-plan-help{font-size:14px;color:var(--rp-location-muted);line-height:1.6}.rp-plan-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:start}.rp-site-plan.has-selection .rp-plan-layout{grid-template-columns:minmax(0,1fr) minmax(320px,360px)}.rp-plan-viewport{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;height:auto;max-height:none;border:1px solid #193e3233;border-radius:18px;background:#f8f7ef;scroll-margin-top:100px;overscroll-behavior-x:contain}.rp-plan-canvas{position:relative;width:100%;min-width:0;line-height:0}.rp-plan-canvas>img{width:100%;max-width:none;height:auto;display:block}.rp-plan-pin{position:absolute;transform:translate(-50%,-50%);padding:0!important;width:28px;min-width:28px;height:28px!important;line-height:1!important;border-radius:50%!important;border:0!important;background:transparent!important;box-shadow:none;cursor:pointer}.rp-plan-pin:before{content:'';position:absolute;inset:5px;border-radius:50%;background:#fffdf714;border:2px solid var(--rp-location-green);box-shadow:0 0 0 2px #fffdf7,0 2px 4px #0005;pointer-events:none}.rp-plan-pin:is(:hover,:focus-visible,[aria-pressed=true]):before{background:#f6d65a;border-color:var(--rp-location-green)}.rp-plan-pin:hover,.rp-plan-pin:focus-visible{z-index:2;background:#f6d65a44!important;outline:2px solid #193e32!important;outline-offset:2px}.rp-plan-pin[aria-pressed=true]{z-index:2;background:#f6d65a44!important;outline:3px solid #b8603c!important;outline-offset:2px}.rp-plan-detail{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;width:100%;position:sticky;top:110px;background:#fffdf8;border:1px solid #193e3222;border-radius:18px;padding:22px;min-width:0;scroll-margin-top:120px}.rp-plan-detail[hidden]{display:none}.rp-plan-detail h3{margin:0 0 8px;font-size:28px}.rp-plan-detail p{font-size:14px}.rp-plan-site-summary{min-width:0}.rp-plan-availability{min-width:0}.rp-calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:16px 0 8px}.rp-calendar-nav strong{text-transform:capitalize}.rp-calendar-table{width:100%;border-collapse:separate;border-spacing:3px;table-layout:fixed;text-align:center;margin:0}.rp-calendar-table th,.rp-calendar-table td{border:0;background:transparent;padding:0;text-align:center}.rp-calendar-table th{font:500 10px/28px Arial,sans-serif}.rp-calendar-table td>button,.rp-calendar-table td>span{display:block;width:100%;padding:0;border:0;border-radius:6px;font-size:13px;line-height:32px}.rp-calendar-table .is-free{color:#193e32;background:#e0ebdf}.rp-calendar-table .is-unavailable{color:#8b4d40;background:#f4eae4;text-decoration:line-through}.rp-calendar-table [aria-pressed=true]{background:#193e32;color:white}.rp-calendar-legend{font-size:12px;margin:12px 0}.rp-plan-detail .rp-service-book{display:block;padding:14px 16px;border-radius:10px;text-align:center;color:white;background:#193e32;text-decoration:none}.rp-site-plan button:disabled{opacity:.4;cursor:default}.rp-site-plan [aria-busy=true]{opacity:.6;pointer-events:none}@media(max-width:899px){.rp-google,.rp-site-plan.has-selection .rp-plan-layout{grid-template-columns:minmax(0,1fr)}.rp-google-location{position:static}.rp-google-location iframe{height:330px}.rp-plan-viewport{overflow:auto;max-height:560px;max-height:min(70svh,560px);overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom;-webkit-overflow-scrolling:touch}.rp-plan-detail{padding:18px;grid-template-columns:minmax(0,1fr);gap:12px;position:static}.rp-plan-tools{align-items:stretch}.rp-plan-tools label{max-width:100%}}

.rp-plan-detail h3:focus{outline:none}.rp-google-terms{font-size:12px;color:#59695e;margin-top:18px}.rp-rating-stars{display:inline-block;position:relative;color:#ddd1b5;white-space:nowrap}.rp-rating-stars>span{position:absolute;inset:0 auto 0 0;overflow:hidden;color:#9b6400}

/* Natural map height on desktop; native finger scrolling in the mobile viewport. */
.rp-plan-tools>div{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.rp-plan-tools button,.rp-plan-back{min-height:44px;min-width:44px}
.rp-plan-back{margin-top:14px;padding:8px 14px;border:1px solid #193e3244;border-radius:9px;background:transparent}
.rp-plan-mobile-help{display:none}
.rp-plan-viewport.is-pannable{cursor:grab}
.rp-plan-viewport.is-dragging,.rp-plan-viewport.is-dragging *{cursor:grabbing!important;user-select:none}
.rp-plan-viewport:focus-visible{outline:3px solid #b8603c;outline-offset:3px}
@media(max-width:899px){.rp-plan-mobile-help{display:inline}.rp-plan-desktop-help{display:none}.rp-plan-tools label{flex-basis:100%}.rp-plan-tools select{font-size:16px}}

/* A stay can be checked before choosing a point. The map keeps its natural height. */
.rp-plan-search{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto auto;gap:16px;align-items:end;padding:24px;border:1px solid #193e3233;border-radius:18px;background:#fffdf8;margin-bottom:12px}
.rp-plan-search-heading{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;align-items:baseline;flex-wrap:wrap}
.rp-plan-search-heading strong{font-size:24px}.rp-plan-search-heading span{font-size:15px;color:var(--rp-location-muted)}
.rp-plan-search label,.rp-plan-filters>label:first-child{display:grid;gap:8px;font-size:15px;font-weight:600;min-width:0}
.rp-plan-date-wrap{position:relative;display:block}.rp-plan-date-wrap input{box-sizing:border-box;width:100%;min-width:0;height:52px;padding:12px 42px 12px 14px;border:1px solid #193e3244;border-radius:10px;background:white;color:var(--rp-location-green);font:inherit;font-size:16px;cursor:pointer}
.rp-plan-date-wrap svg{position:absolute;right:13px;top:16px;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;pointer-events:none}
.rp-plan-search button{height:52px;padding:12px 20px;background:var(--rp-location-green);color:#fffdf8;border:1px solid transparent;border-radius:10px;font-weight:600}
.rp-plan-search .rp-plan-clear{color:var(--rp-location-green);background:transparent;border-color:#193e3233;font-weight:400}
.rp-plan-search[aria-busy=true]{pointer-events:auto;opacity:1}.rp-plan-search-status{min-height:24px;font-weight:600;line-height:1.6;margin:12px 0}
.rp-plan-filters{display:flex;align-items:end;gap:20px;flex-wrap:wrap;margin:20px 0}.rp-plan-filters select{box-sizing:border-box;max-width:100%;padding:12px;border:1px solid #193e3244;border-radius:10px;background:#fffdf8;font:inherit;font-size:16px;color:inherit}
.rp-plan-only{display:flex;align-items:center;gap:8px;min-height:44px;font-size:15px}.rp-plan-only input{width:20px;height:20px;accent-color:var(--rp-location-green)}
.rp-plan-filters select{width:100%;min-width:0}
.rp-plan-search-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;align-self:center}.rp-plan-search-legend[hidden]{display:none}.rp-plan-search-legend span:before{content:'';display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;border:1px solid currentColor}
.rp-plan-search-legend .is-free:before{background:#267149}.rp-plan-search-legend .is-unavailable:before{background:#9b4e44}.rp-plan-search-legend .is-unknown:before{background:#c08b2f}
.rp-plan-pin[hidden]{display:none!important}.rp-plan-pin[data-availability=available]:before{background:#267149;border-color:white;box-shadow:0 0 0 2px #193e32,0 2px 5px #0007}
.rp-plan-pin[data-availability=unavailable]:before{background:#9b4e44;border-color:white}.rp-plan-pin[data-availability=unknown]:before{background:#c08b2f;border-color:white}
.rp-plan-pin[data-availability]:after{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font:bold 12px/1 Arial;pointer-events:none}
.rp-plan-pin[data-availability=available]:after{content:'✓'}.rp-plan-pin[data-availability=unavailable]:after{content:'×'}.rp-plan-pin[data-availability=unknown]:after{content:'?'}
.rp-plan-detail [data-rp-site-stay]:not(:empty){padding:12px;background:#f2f1e7;border-radius:8px;line-height:1.6}.rp-plan-detail .rp-service-book[aria-disabled=true]{opacity:.55;cursor:not-allowed}
.rp-site-plan :is(input,select,button,a):focus-visible{outline:3px solid #b8603c;outline-offset:3px}
body .rp-plan-datepicker{z-index:100100!important;border:1px solid #193e3233;border-radius:14px;padding:14px;box-shadow:0 16px 48px #193e322b;max-width:calc(100vw - 24px);box-sizing:border-box}
body .rp-plan-datepicker .xdsoft_datepicker{width:260px;max-width:100%;margin:0}
body .rp-plan-datepicker .xdsoft_calendar td.xdsoft_current{background:#193e32!important;box-shadow:none!important}body .rp-plan-datepicker .xdsoft_calendar td:hover{background:#b8603c!important}
@media(max-width:1100px){.rp-plan-search{grid-template-columns:1fr 1fr}.rp-plan-search-heading span{width:100%}}
@media(max-width:550px){.rp-plan-search{padding:18px;gap:12px}.rp-plan-search button{grid-column:1/-1;width:100%}.rp-plan-search .rp-plan-clear{height:44px}.rp-plan-search-heading strong{font-size:21px}.rp-plan-filters>label:first-child{width:100%}.rp-plan-search-legend{width:100%}.rp-plan-tools select{width:100%;min-width:0}.rp-plan-date-wrap input{padding-left:10px;padding-right:30px}.rp-plan-date-wrap svg{right:8px;width:18px}}
@media(max-width:380px){.rp-plan-search{grid-template-columns:minmax(0,1fr)}}
