/*!/wp-content/plugins/rvbtbooking/frontend/assets/css/map.css*/.rvbtbooking-map-container{position:relative;margin:0 auto;max-width:100%;border:1px solid #146d74;border-radius:8px;overflow:hidden}.rvbtbooking-map-wrapper{position:relative;display:flex;justify-content:center;align-items:center;overflow:hidden;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.rvbtbooking-map-wrapper.grabbing{cursor:grabbing}.rvbtbooking-map-image{display:block;max-width:100%;height:auto}.rvbtbooking-map-zoom-layer{position:relative;transform-origin:0 0;will-change:transform;display:inline-block;max-width:100%}.rvbtbooking-map-zoom-controls{position:absolute;top:12px;right:12px;display:flex;flex-direction:column;gap:4px;z-index:100}.rvbtbooking-map-zoom-btn{display:flex;align-items:center;justify-content:center;width:36px!important;height:36px!important;box-sizing:border-box;background:rgba(255,255,255,.92);border:1px solid rgba(20,109,116,.25);border-radius:6px;color:#146d74;cursor:pointer;padding:0;transition:background 0.15s ease,box-shadow 0.15s ease,transform 0.1s ease;box-shadow:0 1px 4px rgba(0,0,0,.08);backdrop-filter:blur(4px)}.rvbtbooking-map-zoom-btn:hover{background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.12);border-color:rgba(20,109,116,.45)}.rvbtbooking-map-zoom-btn:active{transform:scale(.94);background:#f0fdf4}.rvbtbooking-map-zoom-btn svg{pointer-events:none}.rvbtbooking-map-svg{position:absolute;top:0;left:0;width:100%!important;height:100%;pointer-events:none}.rvbtbooking-map-svg polygon{display:none;stroke-width:2;fill:rgba(49,165,1,.45);stroke:rgba(49,165,1,.9);pointer-events:all;cursor:pointer;transition:all 0.2s ease}.rvbtbooking-map-svg polygon[data-status="available"]{display:block;fill:rgba(49,165,1,.45);stroke:rgba(49,165,1,.9)}.rvbtbooking-map-svg polygon[data-status="confirmed"]{display:block;fill:rgba(220,38,38,.45);stroke:rgba(220,38,38,.9)}.rvbtbooking-map-svg polygon[data-status="standby"]{display:block;fill:rgba(217,119,6,.45);stroke:rgba(217,119,6,.9)}.rvbtbooking-map-svg polygon[data-status="unavailable"],.rvbtbooking-map-svg polygon[data-avail="0"]{display:block;pointer-events:all;cursor:not-allowed;fill:rgba(220,38,38,.45);stroke:rgba(220,38,38,.9)}.rvbtbooking-map-svg polygon[data-status="closed"]{display:block;fill:rgba(75,85,99,.45);stroke:rgba(75,85,99,.8);cursor:not-allowed}.rvbtbooking-map-svg polygon[data-status="available"].hovered{fill:rgba(49,165,1,.65);stroke:rgba(49,165,1,1);stroke-width:2;filter:drop-shadow(0 0 8px rgba(49,165,1,.4))}.rvbtbooking-map-svg polygon[data-status="confirmed"].hovered{fill:rgba(220,38,38,.65);stroke:rgba(220,38,38,1);stroke-width:2;filter:drop-shadow(0 0 8px rgba(220,38,38,.4))}.rvbtbooking-map-svg polygon[data-status="standby"].hovered{fill:rgba(217,119,6,.65);stroke:rgba(217,119,6,1);stroke-width:2;filter:drop-shadow(0 0 8px rgba(217,119,6,.4))}.rvbtbooking-map-svg polygon[data-status="closed"].hovered{fill:rgba(75,85,99,.65);stroke:rgba(75,85,99,1);stroke-width:2;filter:drop-shadow(0 0 8px rgba(75,85,99,.35))}.rvbtbooking-map-svg polygon[data-status="unavailable"].hovered,.rvbtbooking-map-svg polygon[data-avail="0"].hovered{fill:rgba(220,38,38,.65);stroke:rgba(220,38,38,1);stroke-width:2;filter:drop-shadow(0 0 8px rgba(220,38,38,.4))}.rvbtbooking-map-container map area[data-avail="0"],.rvbtbooking-map-container map area[data-status="unavailable"],.rvbtbooking-map-container map area[data-status="confirmed"],.rvbtbooking-map-container map area[data-status="standby"]{cursor:not-allowed}.rvbtbooking-map-tooltip{background:var(--rvbtbooking-bg,#fff);border-radius:6px;box-shadow:0 1px 2px rgba(0,0,0,.04),0 4px 16px rgba(0,0,0,.08),0 12px 32px rgba(0,0,0,.06);display:none;flex-direction:column;position:absolute;left:0;top:0;z-index:10000;width:180px;overflow:hidden;pointer-events:auto}.rvbtbooking-map-tooltip__close-btn{display:none;position:absolute;top:4px;right:4px;width:20px;height:20px;background:rgba(0,0,0,.4);border-radius:50%;cursor:pointer;z-index:10;backdrop-filter:blur(4px);transition:background 0.15s ease}.rvbtbooking-map-tooltip__close-btn:hover{background:rgba(0,0,0,.6)}.rvbtbooking-map-tooltip__close-btn::before,.rvbtbooking-map-tooltip__close-btn::after{content:'';position:absolute;top:50%;left:50%;width:8px;height:1.5px;background:#fff}.rvbtbooking-map-tooltip__close-btn::before{transform:translate(-50%,-50%) rotate(45deg)}.rvbtbooking-map-tooltip__close-btn::after{transform:translate(-50%,-50%) rotate(-45deg)}.rvbtbooking-map-tooltip__header{position:relative;width:100%;height:72px;background-size:cover;background-position:center;background-color:var(--rvbtbooking-search-accent,#8b7355);display:flex;flex-direction:column;justify-content:flex-end;padding:8px 10px}.rvbtbooking-map-tooltip__header::before{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.65) 0%,rgba(0,0,0,.2) 50%,transparent 100%);pointer-events:none}.rvbtbooking-map-tooltip__category{position:relative;z-index:1;font-size:.55rem;font-weight:500;color:rgba(255,255,255,.75);text-transform:uppercase;letter-spacing:.08em;margin-bottom:1px}.rvbtbooking-map-tooltip__name{position:relative;z-index:1;font-size:.85rem;font-weight:600;color:#fff;margin:0;letter-spacing:-.01em}.rvbtbooking-map-tooltip__body{padding:10px}.rvbtbooking-map-tooltip__icons{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:10px;font-size:.85rem;color:var(--rvbtbooking-search-accent,#8b7355)}.rvbtbooking-map-tooltip__icons:empty{display:none;margin:0}.rvbtbooking-map-tooltip__icons i{opacity:.8;transition:opacity 0.15s ease}.rvbtbooking-map-tooltip__icons i:hover{opacity:1}.rvbtbooking-map-tooltip__book-btn{display:block;background:var(--rvbtbooking-search-accent,#8b7355);border-radius:4px;color:#fff!important;text-decoration:none;padding:6px 0;font-weight:500;font-size:.65rem;text-align:center;letter-spacing:.04em;text-transform:uppercase;transition:background 0.15s ease,transform 0.1s ease}.rvbtbooking-map-tooltip__book-btn:hover{background:var(--rvbtbooking-search-accent-hover,#7a644a);transform:translateY(-1px)}.rvbtbooking-map-tooltip__book-btn:active{transform:translateY(0)}.rvbtbooking-map-tooltip__available-content{display:block}.rvbtbooking-map-tooltip__unavailable-content{display:none}.rvbtbooking-map-tooltip__header--unavailable{filter:grayscale(80%) brightness(.85)}.rvbtbooking-map-tooltip__unavailable-message{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;background:linear-gradient(135deg,#fef2f2 0%,#fee2e2 100%);border-radius:4px;color:#dc2626;font-weight:600;font-size:.65rem;text-transform:uppercase;letter-spacing:.02em}.rvbtbooking-map-tooltip__unavailable-message i{font-size:.75rem}.rvbtbooking-map-tooltip.unavailable .rvbtbooking-map-tooltip__available-content{display:none}.rvbtbooking-map-tooltip.unavailable .rvbtbooking-map-tooltip__unavailable-content{display:block}.rvbtbooking-map-overlay{display:none;background-color:rgba(0,0,0,.5);position:fixed;top:0;left:0;width:100%;height:100%;z-index:100000;overflow:auto;backdrop-filter:blur(2px)}.rvbtbooking-map-overlay__modal{background-color:var(--rvbtbooking-bg,#fff);border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.2);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:900px;max-height:90vh;overflow:hidden}.rvbtbooking-map-overlay__btn-close{position:absolute;top:-10px;right:-10px;width:32px;height:32px;background:var(--rvbtbooking-text,#1e293b);border-radius:50%;cursor:pointer;z-index:10;transition:background 0.15s ease,transform 0.15s ease}.rvbtbooking-map-overlay__btn-close:hover{background:#000;transform:scale(1.05)}.rvbtbooking-map-overlay__btn-close::before,.rvbtbooking-map-overlay__btn-close::after{content:'';position:absolute;top:50%;left:50%;width:14px;height:2px;background:#fff}.rvbtbooking-map-overlay__btn-close::before{transform:translate(-50%,-50%) rotate(45deg)}.rvbtbooking-map-overlay__btn-close::after{transform:translate(-50%,-50%) rotate(-45deg)}.rvbtbooking-map-overlay__actions{padding:12px 16px;border-bottom:1px solid var(--rvbtbooking-border,#e2e8f0);text-align:center}.rvbtbooking-map-overlay__book-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--rvbtbooking-search-accent,#8b7355);color:#fff!important;text-decoration:none;padding:10px 24px;border-radius:6px;font-weight:500;font-size:.85rem;letter-spacing:.02em;transition:all 0.15s ease}.rvbtbooking-map-overlay__book-btn:hover{background:var(--rvbtbooking-search-accent-hover,#7a644a);transform:translateY(-1px);box-shadow:0 4px 12px rgba(139,115,85,.25)}.rvbtbooking-map-overlay__book-btn span{color:#fff}.rvbtbooking-map-overlay__content iframe{border:none;width:100%;min-height:70vh}.rvbtbooking-map-notice{padding:24px;background:var(--rvbtbooking-bg-light,#f8fafc);border:1px solid var(--rvbtbooking-border,#e2e8f0);border-radius:6px;text-align:center;color:var(--rvbtbooking-text-light,#64748b);font-size:.875rem}@media (hover:none) and (pointer:coarse){.rvbtbooking-map-tooltip{position:absolute;width:200px;z-index:100001}.rvbtbooking-map-tooltip__close-btn{display:block}}@media (max-width:992px){.rvbtbooking-map-tooltip{position:absolute;z-index:100001}.rvbtbooking-map-tooltip__close-btn{display:block}}@media (max-width:768px){.rvbtbooking-map-overlay__modal{width:95%;max-height:95vh}.rvbtbooking-map-overlay__btn-close{top:8px;right:8px}}@media (max-width:640px){.rvbtbooking-map-zoom-controls{top:8px;right:8px;gap:3px}.rvbtbooking-map-zoom-btn{width:32px!important;height:32px!important}.rvbtbooking-map-zoom-btn svg{width:14px;height:14px}}.rvbtbooking-map-container.focus-mode .rvbtbooking-map-svg polygon{fill:rgba(148,163,184,.25)!important;stroke:rgba(148,163,184,.4)!important;transition:fill 0.3s ease,stroke 0.3s ease}.rvbtbooking-map-container.focus-mode .rvbtbooking-map-svg polygon.polygon-focused{fill:rgba(56,155,135,.5)!important;stroke:rgba(56,155,135,1)!important;stroke-width:3;animation:polygon-pulse 1.5s ease-in-out 3}@keyframes polygon-pulse{0%,100%{stroke-width:3;stroke-opacity:1;filter:drop-shadow(0 0 0 rgba(56,155,135,0))}50%{stroke-width:4;stroke-opacity:1;filter:drop-shadow(0 0 6px rgba(56,155,135,.7))}}#rvbtbooking-map-search-bar{background:var(--rvbtbooking-search-accent,#8b7355);border:none;border-bottom:1px solid #e2e8f0;border-radius:0;box-shadow:none;padding:1.25rem 1.5rem 1rem;margin-bottom:0;gap:.75rem;flex-wrap:nowrap}.rvbtbooking-map-container .rvbtbooking-date-card{max-width:none!important}.rvbtbooking-map-container .rvbtbooking-date-card-wrap{flex:1 1 180px;min-width:170px}.rvbtbooking-map-container .rvbtbooking-nights-wrap{flex:0 0 auto;min-width:80px}.rvbtbooking-map-container .rvbtbooking-search-btn-wrap{flex:0 0 auto}.rvbtbooking-map-container .rvbtbooking-search-submit{min-width:100px!important}.rvbtbooking-map-container .rvbtbooking-date-label{font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}@media (max-width:900px){#rvbtbooking-map-search-bar{flex-wrap:wrap;padding:1rem 1.25rem .875rem}.rvbtbooking-map-container .rvbtbooking-date-card-wrap{flex:1 1 calc(50% - 0.5rem);min-width:0}.rvbtbooking-map-container .rvbtbooking-nights-wrap{flex:0 0 auto}.rvbtbooking-map-container .rvbtbooking-search-btn-wrap{flex:0 0 auto}}@media (max-width:640px){#rvbtbooking-map-search-bar{padding:.875rem}.rvbtbooking-map-container .rvbtbooking-date-card-wrap{flex:0 0 100%}.rvbtbooking-map-container .rvbtbooking-nights-wrap{flex:1 1 calc(50% - 0.375rem)}.rvbtbooking-map-container .rvbtbooking-search-btn-wrap{flex:0 0 100%}.rvbtbooking-map-container .rvbtbooking-search-btn-wrap .rvbtbooking-search-submit{width:100%!important}}@media (max-width:480px){#rvbtbooking-map-search-bar{padding:.75rem;gap:.5rem}.rvbtbooking-map-container .rvbtbooking-date-label{font-size:.625rem}}.rvbtbooking-map-container .rvbtbooking-search-submit{min-width:100px!important;border-radius:6px!important;line-height:5px!important}.rvbtbooking-map-container .rvbtbooking-date-mday{font-size:3rem!important}.rvbtbooking-map-container .rvbtbooking-date-card{border:1px solid color-mix(in srgb,var(--rvbtbooking-search-accent,#8b7355) 25%,#e2e8f0)!important;padding:.25rem 1rem!important;border-radius:5px;background:#fff}.rvbtbooking-map-container .rvbtbooking-nights-card{border:1px solid color-mix(in srgb,var(--rvbtbooking-search-accent,#8b7355) 25%,#e2e8f0);border-radius:5px;background:#fff}.rvbtbooking-map-container .rvbtbooking-date-label{text-align:left!important;margin-bottom:0.375rem!important;color:#fff}.rvbtbooking-map-container .rvbtbooking-date-display{align-items:flex-start!important}.rvbtbooking-map-container .rvbtbooking-date-details{align-items:flex-start!important}