.lvvp .mphb-calendar{width:100%;max-width:none;background:#fff;border:1px solid #daddd7;padding:20px;box-sizing:border-box;container-type:inline-size}
.lvvp .mphb-calendar .datepick{width:100%!important;max-width:none!important;background:transparent;border:0;font-family:Montserrat,sans-serif}
.lvvp .mphb-calendar .datepick-month-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;clear:both}
.lvvp .mphb-calendar .datepick-month{width:100%!important;float:none;border:0;background:none;margin:0;padding:0;min-width:0}
.lvvp .mphb-calendar .datepick-month-header{height:auto;min-height:44px;padding:10px 0;background:none;color:#2e344a;font:700 15px/1.6 Manrope,sans-serif;text-align:center}
.lvvp .mphb-calendar .datepick-month-header select{font:700 14px/1.5 Manrope,sans-serif;color:#2e344a;background:transparent;border:0;padding:4px;max-width:65%;height:auto}
.lvvp .mphb-calendar table{width:100%;table-layout:fixed;border:0;border-collapse:separate;border-spacing:3px;margin:0;background:none}
.lvvp .mphb-calendar th,.lvvp .mphb-calendar td{border:0;padding:0;background:none;text-align:center}
.lvvp .mphb-calendar th{height:30px;font:400 11px/1.5 Montserrat,sans-serif;color:#59636b}
.lvvp .mphb-calendar .mphb-date-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:51px;height:auto;padding:5px 1px;font:500 14px/1.4 Montserrat,sans-serif;background:#f0f1ef;color:#626970;opacity:1;border:0;border-radius:3px;box-shadow:none;text-decoration:none}
.lvvp .mphb-calendar .mphb-date-cell.mphb-available-date{background:#e8f1f3;color:#2e344a}
.lvvp .mphb-calendar .mphb-date-cell.mphb-booked-date,.lvvp .mphb-calendar .mphb-date-cell.mphb-not-available-date{background:#f0f1ef;color:#70767a;text-decoration:line-through}
.lvvp .mphb-calendar span.mphb-available-date:not(.datepick-selected){background:#f0f1ef;color:#70767a}
.lvvp .mphb-calendar .mphb-date-cell__price,.lvvp .mphb-calendar .mphb-date-cell__price .mphb-price{font:400 9px/1.5 Montserrat,sans-serif!important;color:inherit!important;white-space:nowrap;letter-spacing:-.2px}
.lvvp .mphb-calendar .mphb-extra-date{background:transparent!important;visibility:hidden}
.lvvp .mphb-calendar a.mphb-date-cell:hover,.lvvp .mphb-calendar .datepick-highlight{background:#cddfe4!important;color:#2e344a!important}
.lvvp .mphb-calendar .mphb-date-cell.datepick-selected{background:#4b8495!important;color:white!important;text-decoration:none}
.lvvp .mphb-calendar .mphb-selected-date--check-in,.lvvp .mphb-calendar .mphb-selected-date--check-out{background:#2e344a!important;color:white!important}
.lvvp .mphb-calendar .datepick-today{outline:1px solid #4b8495;outline-offset:-2px}
.lvvp .mphb-calendar .datepick-nav{display:flex;justify-content:space-between;align-items:center;padding:0 0 12px;background:transparent;height:auto}
.lvvp .mphb-calendar .datepick-nav a{float:none;width:auto;min-width:44px;min-height:44px;display:flex;justify-content:center;align-items:center;border:1px solid #daddd7;border-radius:3px;background:white;color:#2e344a;padding:8px 12px;font:500 12px/1.6 Montserrat,sans-serif}
.lvvp .mphb-calendar .datepick-ctrl{display:flex;justify-content:space-between;align-items:center;gap:15px;background:none;color:#3b4249;margin-top:18px;padding:12px 0 0;border-top:1px solid #e3e6e1;height:auto}
.lvvp .mphb-calendar .mphb-calendar__selected-dates{color:#3b4249!important;font:400 12px/1.7 Montserrat,sans-serif}
.lvvp .mphb-calendar .datepick-cmd-clear{color:#4b8495!important;background:none;font:500 12px/1.7 Montserrat,sans-serif;padding:10px;min-height:44px;float:none;width:auto}
.lvvp .mphb-calendar a:focus-visible{outline:2px solid #2e344a;outline-offset:2px}
.lvvp .lvvp-calendar-legend{display:flex;flex-wrap:wrap;gap:12px 20px;margin:15px 0 0;font:400 11px/1.7 Montserrat,sans-serif;color:#59636b}
.lvvp-calendar-legend span{display:inline-flex;gap:7px;align-items:center}.lvvp-calendar-legend i{width:12px;height:12px;background:#e8f1f3;border:1px solid #c9d8dc;border-radius:2px}.lvvp-calendar-legend .unavailable{background:#f0f1ef;border-color:#c8ccce}.lvvp-calendar-legend .selected{background:#4b8495;border-color:#4b8495}
@container(max-width:510px){.lvvp .mphb-calendar .datepick-month-row{grid-template-columns:minmax(0,1fr);gap:24px}.lvvp .mphb-calendar .mphb-date-cell{min-height:48px}.lvvp .mphb-calendar .mphb-date-cell__price,.lvvp .mphb-calendar .mphb-date-cell__price .mphb-price{font-size:10px!important}}
@media(max-width:767px){.lvvp .mphb-calendar{padding:12px}.lvvp .mphb-calendar .datepick-month-row{grid-template-columns:minmax(0,1fr);gap:24px}}

/* Replace duplicated theme icons and native text with one CSS chevron. */
.lvvp .mphb-calendar .datepick-nav a.datepick-cmd-prev,
.lvvp .mphb-calendar .datepick-nav a.datepick-cmd-next{position:relative;width:44px;height:44px;padding:0;font-size:0!important;line-height:0!important;color:#2e344a!important}
.lvvp .mphb-calendar .datepick-nav a.datepick-cmd-prev::before,
.lvvp .mphb-calendar .datepick-nav a.datepick-cmd-next::before{content:""!important;display:block!important;position:static!important;width:9px;height:9px;margin:0!important;border:0;border-left:2px solid currentColor;border-bottom:2px solid currentColor;background:none!important;font-size:0!important;transform:rotate(45deg)}
.lvvp .mphb-calendar .datepick-nav a.datepick-cmd-next::before{transform:rotate(225deg)}
.lvvp .mphb-calendar .datepick-nav a.datepick-cmd-prev::after,
.lvvp .mphb-calendar .datepick-nav a.datepick-cmd-next::after{display:none!important;content:none!important}
.lvvp .mphb-calendar .datepick-nav a.datepick-disabled{opacity:.4;cursor:default}

/* Native popup gets the same visual language, scoped to villa design pages. */
body.lvvp-native-page .datepick-popup{width:100%;max-width:none;background:#fff;border:1px solid #daddd7;padding:20px;box-sizing:border-box;container-type:inline-size}
body.lvvp-native-page .datepick-popup .datepick{width:100%!important;max-width:none!important;background:transparent;border:0;font-family:Montserrat,sans-serif}
body.lvvp-native-page .datepick-popup .datepick-month-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;clear:both}
body.lvvp-native-page .datepick-popup .datepick-month{width:100%!important;float:none;border:0;background:none;margin:0;padding:0;min-width:0}
body.lvvp-native-page .datepick-popup .datepick-month-header{height:auto;min-height:44px;padding:10px 0;background:none;color:#2e344a;font:700 15px/1.6 Manrope,sans-serif;text-align:center}
body.lvvp-native-page .datepick-popup .datepick-month-header select{font:700 14px/1.5 Manrope,sans-serif;color:#2e344a;background:transparent;border:0;padding:4px;max-width:65%;height:auto}
body.lvvp-native-page .datepick-popup table{width:100%;table-layout:fixed;border:0;border-collapse:separate;border-spacing:3px;margin:0;background:none}
body.lvvp-native-page .datepick-popup th,body.lvvp-native-page .datepick-popup td{border:0;padding:0;background:none;text-align:center}
body.lvvp-native-page .datepick-popup th{height:30px;font:400 11px/1.5 Montserrat,sans-serif;color:#59636b}
body.lvvp-native-page .datepick-popup .mphb-date-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:51px;height:auto;padding:5px 1px;font:500 14px/1.4 Montserrat,sans-serif;background:#f0f1ef;color:#626970;opacity:1;border:0;border-radius:3px;box-shadow:none;text-decoration:none}
body.lvvp-native-page .datepick-popup .mphb-date-cell.mphb-available-date{background:#e8f1f3;color:#2e344a}
body.lvvp-native-page .datepick-popup .mphb-date-cell.mphb-booked-date,body.lvvp-native-page .datepick-popup .mphb-date-cell.mphb-not-available-date{background:#f0f1ef;color:#70767a;text-decoration:line-through}
body.lvvp-native-page .datepick-popup span.mphb-available-date:not(.datepick-selected){background:#f0f1ef;color:#70767a}
body.lvvp-native-page .datepick-popup .mphb-date-cell__price,body.lvvp-native-page .datepick-popup .mphb-date-cell__price .mphb-price{font:400 9px/1.5 Montserrat,sans-serif!important;color:inherit!important;white-space:nowrap;letter-spacing:-.2px}
body.lvvp-native-page .datepick-popup .mphb-extra-date{background:transparent!important;visibility:hidden}
body.lvvp-native-page .datepick-popup a.mphb-date-cell:hover,body.lvvp-native-page .datepick-popup .datepick-highlight{background:#cddfe4!important;color:#2e344a!important}
body.lvvp-native-page .datepick-popup .mphb-date-cell.datepick-selected{background:#4b8495!important;color:white!important;text-decoration:none}
body.lvvp-native-page .datepick-popup .mphb-selected-date--check-in,body.lvvp-native-page .datepick-popup .mphb-selected-date--check-out{background:#2e344a!important;color:white!important}
body.lvvp-native-page .datepick-popup .datepick-today{outline:1px solid #4b8495;outline-offset:-2px}
body.lvvp-native-page .datepick-popup .datepick-nav{display:flex;justify-content:space-between;align-items:center;padding:0 0 12px;background:transparent;height:auto}
body.lvvp-native-page .datepick-popup .datepick-nav a{float:none;width:auto;min-width:44px;min-height:44px;display:flex;justify-content:center;align-items:center;border:1px solid #daddd7;border-radius:3px;background:white;color:#2e344a;padding:8px 12px;font:500 12px/1.6 Montserrat,sans-serif}
body.lvvp-native-page .datepick-popup .datepick-ctrl{display:flex;justify-content:space-between;align-items:center;gap:15px;background:none;color:#3b4249;margin-top:18px;padding:12px 0 0;border-top:1px solid #e3e6e1;height:auto}
body.lvvp-native-page .datepick-popup .mphb-calendar__selected-dates{color:#3b4249!important;font:400 12px/1.7 Montserrat,sans-serif}
body.lvvp-native-page .datepick-popup .datepick-cmd-clear{color:#4b8495!important;background:none;font:500 12px/1.7 Montserrat,sans-serif;padding:10px;min-height:44px;float:none;width:auto}
body.lvvp-native-page .datepick-popup a:focus-visible{outline:2px solid #2e344a;outline-offset:2px}
.lvvp .lvvp-calendar-legend{display:flex;flex-wrap:wrap;gap:12px 20px;margin:15px 0 0;font:400 11px/1.7 Montserrat,sans-serif;color:#59636b}
.lvvp-calendar-legend span{display:inline-flex;gap:7px;align-items:center}.lvvp-calendar-legend i{width:12px;height:12px;background:#e8f1f3;border:1px solid #c9d8dc;border-radius:2px}.lvvp-calendar-legend .unavailable{background:#f0f1ef;border-color:#c8ccce}.lvvp-calendar-legend .selected{background:#4b8495;border-color:#4b8495}
@container(max-width:510px){body.lvvp-native-page .datepick-popup .datepick-month-row{grid-template-columns:minmax(0,1fr);gap:24px}body.lvvp-native-page .datepick-popup .mphb-date-cell{min-height:48px}body.lvvp-native-page .datepick-popup .mphb-date-cell__price,body.lvvp-native-page .datepick-popup .mphb-date-cell__price .mphb-price{font-size:10px!important}}
@media(max-width:767px){body.lvvp-native-page .datepick-popup{padding:12px}body.lvvp-native-page .datepick-popup .datepick-month-row{grid-template-columns:minmax(0,1fr);gap:24px}}

/* Replace duplicated theme icons and native text with one CSS chevron. */
body.lvvp-native-page .datepick-popup .datepick-nav a.datepick-cmd-prev,
body.lvvp-native-page .datepick-popup .datepick-nav a.datepick-cmd-next{position:relative;width:44px;height:44px;padding:0;font-size:0!important;line-height:0!important;color:#2e344a!important}
body.lvvp-native-page .datepick-popup .datepick-nav a.datepick-cmd-prev::before,
body.lvvp-native-page .datepick-popup .datepick-nav a.datepick-cmd-next::before{content:""!important;display:block!important;position:static!important;width:9px;height:9px;margin:0!important;border:0;border-left:2px solid currentColor;border-bottom:2px solid currentColor;background:none!important;font-size:0!important;transform:rotate(45deg)}
body.lvvp-native-page .datepick-popup .datepick-nav a.datepick-cmd-next::before{transform:rotate(225deg)}
body.lvvp-native-page .datepick-popup .datepick-nav a.datepick-cmd-prev::after,
body.lvvp-native-page .datepick-popup .datepick-nav a.datepick-cmd-next::after{display:none!important;content:none!important}
body.lvvp-native-page .datepick-popup .datepick-nav a.datepick-disabled{opacity:.4;cursor:default}

body.lvvp-native-page .datepick-popup{width:min(640px,calc(100vw - 24px))!important;max-width:calc(100vw - 24px)!important;border:1px solid #daddd7!important;box-shadow:0 12px 36px #2e344a26;background:white!important;padding:16px;border-radius:5px;z-index:10000}
body.lvvp-native-page .datepick-popup .datepick{border:0!important;background:white!important}
body.lvvp-native-page .datepick-popup .datepick-cmd-close{color:#4b8495!important;background:transparent;font:500 12px/1.7 Montserrat,sans-serif;min-height:44px;padding:10px;width:auto;float:none}
.lvvp .lvvp-calendar-bottom{display:none}
@media(max-width:767px){
body.lvvp-native-page .datepick-popup{position:fixed!important;left:12px!important;right:12px!important;top:10vh!important;bottom:auto!important;max-height:80vh;overflow:auto;width:auto!important}
.lvvp .lvvp-calendar-bottom:not([hidden]){display:flex;align-items:center;justify-content:space-between;gap:15px;margin:16px 0;font:400 12px/1.7 Montserrat,sans-serif;color:#3b4249}
.lvvp-calendar-bottom button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #daddd7;border-radius:3px;background:#fff;color:#2e344a}
.lvvp-calendar-bottom button:disabled{opacity:.4;cursor:default}.lvvp-calendar-bottom svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
}

/* Legend for MotoPress's existing diagonal departure-day indicator. */
.lvvp .lvvp-calendar-legend i.checkout-only{background:linear-gradient(135deg,#e8f1f3 0%,#e8f1f3 46%,#fff 47%,#fff 53%,#f0f1ef 54%,#f0f1ef 100%);border:1px solid #a8b8bd;width:14px;height:14px}
