/* RURENT Booking Picker v2 — clean, Apple-style. Namespace: rrp- */
.rrp-scrim{position:fixed;inset:0;background:rgba(28,27,25,.34);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:99998}
.rrp-scrim.rrp-show{opacity:1;pointer-events:auto}
.rrp-sheet{position:fixed;left:50%;bottom:0;transform:translate(-50%,102%);width:min(440px,100%);background:#fff;border-radius:28px 28px 0 0;box-shadow:0 1px 2px rgba(28,27,25,.05),0 12px 44px rgba(28,27,25,.18);z-index:99999;transition:transform .42s cubic-bezier(.32,.72,0,1);overflow:hidden;padding-bottom:env(safe-area-inset-bottom);font-family:-apple-system,BlinkMacFontSystem,"SF Pro Text","Segoe UI",Roboto,system-ui,sans-serif;color:#1C1B19;pointer-events:none}
.rrp-sheet.rrp-show{transform:translate(-50%,0);pointer-events:auto}
@media(min-width:600px){.rrp-sheet{bottom:auto;top:50%;transform:translate(-50%,-46%) scale(.98);border-radius:28px;opacity:0}.rrp-sheet.rrp-show{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}}
.rrp-sheet *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.rrp-grip{width:38px;height:5px;border-radius:3px;background:#EAE5DC;margin:10px auto 4px}
@media(min-width:600px){.rrp-grip{display:none}}
.rrp-head{padding:6px 20px 0;display:flex;align-items:center;justify-content:space-between}
.rrp-head h2{font-size:19px;font-weight:700;letter-spacing:-.02em;margin:0;font-family:inherit}
.rrp-close{width:30px;height:30px;border-radius:50%;border:none;background:#F5F2EC;color:#8A847B;cursor:pointer;display:grid;place-items:center;transition:background .15s}
.rrp-close:active{background:#EAE5DC}
.rrp-rail{display:flex;gap:6px;padding:16px 20px 4px}
.rrp-seg{flex:1;cursor:pointer;background:none;border:none;padding:0;text-align:left;font-family:inherit}
.rrp-seg .rrp-cap{font-size:11px;letter-spacing:.03em;text-transform:uppercase;color:#8A847B;margin-bottom:6px;transition:color .2s}
.rrp-seg .rrp-bar{height:3px;border-radius:2px;background:#EAE5DC;transition:background .3s cubic-bezier(.32,.72,0,1)}
.rrp-seg .rrp-val{font-size:14px;font-weight:600;margin-top:7px;color:#1C1B19;letter-spacing:-.01em;min-height:18px}
.rrp-seg .rrp-val.rrp-empty{color:#CFC9BF;font-weight:500}
.rrp-seg.rrp-active .rrp-cap{color:#BF6616}
.rrp-seg.rrp-active .rrp-bar{background:#BF6616}
.rrp-seg.rrp-done .rrp-bar{background:#BF6616;opacity:.4}
.rrp-stage{position:relative;overflow:hidden;min-height:326px}
.rrp-panel{padding:8px 20px 0;opacity:0;transform:translateX(24px);position:absolute;inset:0;pointer-events:none;transition:opacity .34s cubic-bezier(.32,.72,0,1),transform .34s cubic-bezier(.32,.72,0,1)}
.rrp-panel.rrp-in{opacity:1;transform:translateX(0);position:relative;pointer-events:auto}
.rrp-panel.rrp-outl{opacity:0;transform:translateX(-24px)}
.rrp-caltop{display:flex;align-items:center;justify-content:space-between;padding:2px 2px 12px}
.rrp-caltop .rrp-m{font-size:16px;font-weight:700;letter-spacing:-.01em}
.rrp-calnav{display:flex;gap:6px}
.rrp-calnav button{width:34px;height:34px;border-radius:11px;border:1px solid #EAE5DC;background:#fff;color:#1C1B19;cursor:pointer;display:grid;place-items:center;transition:background .15s,transform .1s}
.rrp-calnav button:active{transform:scale(.92)}
.rrp-calnav button:disabled{color:#CFC9BF;cursor:default}
.rrp-dow{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}
.rrp-dow span{text-align:center;font-size:11px;color:#8A847B;font-weight:600;padding:4px 0}
.rrp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.rrp-day{aspect-ratio:1;border:none;background:none;border-radius:13px;font-size:15px;font-weight:500;color:#1C1B19;cursor:pointer;position:relative;transition:background .16s cubic-bezier(.32,.72,0,1),color .16s,transform .12s cubic-bezier(.32,.72,0,1);font-variant-numeric:tabular-nums;font-family:inherit;padding:0}
.rrp-day:hover:not(.rrp-off):not(.rrp-sel){background:#F5F2EC}
.rrp-day:active:not(.rrp-off){transform:scale(.9)}
.rrp-day.rrp-blank{visibility:hidden}
.rrp-day.rrp-off{color:#CFC9BF;cursor:default}
.rrp-day.rrp-today::after{content:"";position:absolute;bottom:6px;left:50%;transform:translateX(-50%);width:4px;height:4px;border-radius:50%;background:#BF6616}
.rrp-day.rrp-sel{background:#BF6616;color:#fff;font-weight:700}
.rrp-day.rrp-sel.rrp-today::after{background:#fff}
.rrp-day.rrp-pmark:not(.rrp-sel){box-shadow:inset 0 0 0 1.5px #BF6616;color:#BF6616;font-weight:600}
.rrp-hint{font-size:12.5px;color:#8A847B;padding:0 2px 12px;line-height:1.4}
.rrp-hint b{color:#1C1B19;font-weight:600}
.rrp-times{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding-bottom:6px;max-height:246px;overflow-y:auto;-webkit-overflow-scrolling:touch}
.rrp-slot{padding:12px 0;border-radius:13px;border:1px solid #EAE5DC;background:#fff;font-size:14px;font-weight:600;color:#1C1B19;cursor:pointer;font-variant-numeric:tabular-nums;transition:background .15s cubic-bezier(.32,.72,0,1),color .15s,border-color .15s,transform .1s cubic-bezier(.32,.72,0,1);font-family:inherit}
.rrp-slot:hover:not(.rrp-off):not(.rrp-sel){border-color:#BF6616;color:#BF6616}
.rrp-slot:active:not(.rrp-off){transform:scale(.94)}
.rrp-slot.rrp-sel{background:#BF6616;border-color:#BF6616;color:#fff}
.rrp-slot.rrp-off{color:#CFC9BF;background:#F5F2EC;cursor:default;border-color:transparent;text-decoration:line-through;text-decoration-thickness:1px}
.rrp-loading{padding:40px 0;text-align:center;color:#8A847B;font-size:13px}
.rrp-foot{border-top:1px solid #EAE5DC;padding:14px 20px calc(16px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:14px;background:#fff}
.rrp-sum{flex:1;min-width:0}
.rrp-sum .rrp-line{font-size:14px;font-weight:600;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:inherit}
.rrp-sum .rrp-sub{font-size:12px;color:#8A847B;margin-top:3px;display:flex;align-items:center;gap:7px}
.rrp-pill{background:#FBEFE2;color:#BF6616;font-weight:700;font-size:11px;padding:2px 8px;border-radius:20px;white-space:nowrap}
.rrp-confirm{flex:none;border:none;border-radius:15px;background:#BF6616;color:#fff;font-size:15px;font-weight:600;padding:13px 22px;cursor:pointer;transition:transform .12s cubic-bezier(.32,.72,0,1),opacity .2s;letter-spacing:-.01em;font-family:inherit}
.rrp-confirm:active{transform:scale(.96)}
.rrp-confirm:disabled{opacity:.4;cursor:default}
@media(prefers-reduced-motion:reduce){.rrp-sheet *,.rrp-scrim{transition-duration:.01ms!important}}

/* trigger "set" accent when a booking window is applied */
.rrp-trigger-set{color:#BF6616 !important}

/* ── Location gate ── */
.rrploc-scrim{position:fixed;inset:0;background:rgba(28,27,25,.42);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:100000;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;transition:opacity .3s ease}
.rrploc-scrim.rrploc-show{opacity:1}
.rrploc-card{width:min(400px,100%);background:#fff;border-radius:26px;box-shadow:0 12px 44px rgba(28,27,25,.22);padding:30px 26px 22px;text-align:center;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,system-ui,sans-serif;color:#1C1B19;transform:translateY(14px) scale(.98);transition:transform .38s cubic-bezier(.32,.72,0,1)}
.rrploc-show .rrploc-card{transform:translateY(0) scale(1)}
.rrploc-ico{width:56px;height:56px;border-radius:17px;background:#FBEFE2;color:#BF6616;display:grid;place-items:center;margin:0 auto 16px}
.rrploc-h{font-size:21px;font-weight:700;letter-spacing:-.02em;margin:0 0 8px}
.rrploc-p{font-size:13.5px;line-height:1.5;color:#8A847B;margin:0 auto 22px;max-width:300px}
.rrploc-opts{display:flex;flex-direction:column;gap:10px}
.rrploc-opt{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-radius:15px;border:1px solid #EAE5DC;background:#fff;color:#1C1B19;font-size:16px;font-weight:600;letter-spacing:-.01em;cursor:pointer;transition:border-color .16s,background .16s,transform .12s cubic-bezier(.32,.72,0,1);font-family:inherit}
.rrploc-opt svg{color:#CFC9BF;transition:color .16s,transform .16s}
.rrploc-opt:hover{border-color:#BF6616;background:#FBEFE2}
.rrploc-opt:hover svg{color:#BF6616;transform:translateX(2px)}
.rrploc-opt:active{transform:scale(.98)}

/* v1.3.10 fix (safety net): saat sheet/scrim tertutup, pastikan seluruh isinya
   tidak meng-intercept klik. Menetralisir .rrp-panel.rrp-in yang tersisa
   pointer-events:auto dan menutupi card di belakang sheet (desktop centered). */
.rrp-scrim:not(.rrp-show),
.rrp-sheet:not(.rrp-show),
.rrp-sheet:not(.rrp-show) *{pointer-events:none !important;}
