.range-calendar{background:#fff;border:1px solid var(--wp-line);border-radius:16px;padding:1.25rem;box-shadow:var(--wp-shadow)}
.range-calendar-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.9rem}
.range-calendar-head h3{font-size:1.25rem;letter-spacing:-.04em;text-transform:capitalize;margin:.3rem 0 0}
.range-calendar .calendar-legend{margin:0 0 .8rem;justify-content:flex-end}
.range-calendar .calendar-grid{gap:.35rem}
.range-calendar .calendar-weekdays{margin-bottom:.25rem}
.range-calendar-days .calendar-day{min-height:66px;align-items:center;justify-content:flex-start;padding:.48rem .2rem;gap:.18rem}
.range-calendar-days .calendar-day span{align-self:flex-start;margin-left:.28rem}
.range-calendar-days .calendar-day small{font-size:.65rem;font-weight:600;white-space:nowrap}
.range-calendar-days .calendar-day.free{background:#eef7ee;border-color:#d8e9d9;color:#33714a}
.range-calendar-days .calendar-day.booked{background:#fff2ee;border-color:#f1d8cf;color:#a35f50}
.range-calendar-days .calendar-day.closed{background:#f8f9f7;color:#a3ada5}
.range-calendar-days .calendar-day.in-range{background:#607f66;border-color:#526f58;border-radius:0;color:#fff}
.range-calendar-days .calendar-day.in-range:not(.selected){box-shadow:inset 0 0 0 1px #405e47}
.range-calendar-days .calendar-day.range-start{border-top-left-radius:10px;border-bottom-left-radius:10px}
.range-calendar-days .calendar-day.range-end{border-top-right-radius:10px;border-bottom-right-radius:10px}
.calendar-page .calendar-day.in-range{background:#607f66;border-color:#526f58;color:#fff}
.range-calendar-days .calendar-day.selected{background:#1f4930;border-color:#173b26;color:#fff;border-radius:10px}
.range-calendar-days .calendar-day.selected small{color:#fff}
.range-calendar-summary{display:flex;justify-content:space-between;align-items:center;gap:.5rem;border-top:1px solid var(--wp-line);margin-top:.9rem;padding-top:.85rem;font-size:.8rem;color:var(--wp-muted)}
.calendar-reset{border:0;background:transparent;color:var(--wp-green);font-size:.76rem;font-weight:600}
.results-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin:2rem 0 1rem}
.results-heading h2{font-size:1.35rem;letter-spacing:-.04em;margin:.35rem 0}
.results-heading p{margin:0}
.search-results{display:block;min-width:0;scroll-margin-top:4rem}
.search-results>.results-heading{padding:1rem 1.1rem;margin:1.4rem 0 1rem;background:#edf3ec;border:1px solid #dfe9dd;border-radius:12px}
.search-results>.results-heading h2{margin:.3rem 0}
.search-results>.results-heading p{max-width:46rem}
.results-period{background:#e9f1e8;color:var(--wp-green);border-radius:30px;padding:.5rem .8rem;font-size:.76rem;font-weight:600;white-space:nowrap}
.owner-parking-card{background:#fff;border:1px solid var(--wp-line);border-radius:16px;box-shadow:var(--wp-shadow);padding:1.35rem;margin-bottom:1.3rem}
.owner-parking-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}
.owner-parking-heading h2{font-size:1.2rem;letter-spacing:-.04em;margin:.3rem 0 0}
.owner-parking-heading h2 span{font-weight:400;color:var(--wp-muted)}
.parking-status{font-size:.75rem;color:var(--wp-green);display:flex;align-items:center;gap:.4rem}
.parking-status i,.offer-dot{width:9px;height:9px;border-radius:50%;background:#70ae7c}
.owner-calendar-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(230px,.8fr);gap:1rem;align-items:start}
.owner-calendar-main{min-width:0}
.owner-calendar-layout .range-calendar{padding:1rem;box-shadow:none}
.listing-panel{background:#f6f8f5;border:1px solid var(--wp-line);border-radius:13px;padding:1rem}
.listing-panel h3{font-size:1.05rem;letter-spacing:-.03em;margin:.4rem 0}
.listing-panel>p{font-size:.78rem;line-height:1.5}
.price-field{display:grid;gap:.35rem;font-size:.78rem;margin:1rem 0}
.price-field small{color:var(--wp-muted);font-size:.7rem;font-weight:400}
.listing-selection{display:grid;gap:.22rem;border:1px solid #dce7dc;background:#fff;border-radius:10px;padding:.8rem;margin:.9rem 0;font-size:.74rem;color:var(--wp-muted)}
.listing-selection strong{font-size:.84rem;color:var(--wp-ink)}
.muted-selection{min-height:66px;align-items:center}
.owner-offers{border-top:1px solid var(--wp-line);margin-top:1rem;padding-top:.9rem}
.owner-offers h3{font-size:.9rem;margin:0 0 .55rem}
.offer-row{display:flex;align-items:center;gap:.65rem;padding:.65rem 0;border-top:1px solid #edf0ec;font-size:.76rem}
.offer-row strong{flex:1;font-weight:600}
.offer-row>span:nth-of-type(2){color:var(--wp-muted);white-space:nowrap}
.locked-day-note{font-size:.78rem;line-height:1.55;color:#8e5d4e;background:#fff1ec;border:1px solid #f0d8cf;border-radius:9px;padding:.8rem}
.my-bookings-calendar,.my-booking-list{background:#fff;border:1px solid var(--wp-line);border-radius:16px;padding:1.25rem;box-shadow:var(--wp-shadow);margin-bottom:1.2rem}
.my-bookings-calendar .calendar-head{margin-bottom:1rem}
.booking-calendar-grid .calendar-day{align-items:flex-start;gap:.2rem}
.booking-calendar-grid .calendar-day small{font-size:.6rem;font-weight:600;background:#f6ded8;border-radius:4px;padding:.12rem .25rem;color:#8f554b}
.booking-list-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}
.booking-list-heading h2{font-size:1.15rem;margin:.3rem 0}
.my-booking-card{border:1px solid var(--wp-line);border-radius:12px;padding:1rem;margin-top:.7rem}
.booking-card-title{display:flex;justify-content:space-between;gap:1rem;align-items:center}
.booking-card-title h3{font-size:1rem;margin:.35rem 0}
.booking-card-title>strong{color:var(--wp-green);white-space:nowrap}
.guest-edit{display:flex;align-items:end;gap:.65rem;margin-top:.8rem;padding-top:.8rem;border-top:1px solid #edf0ec}
.guest-edit label{display:grid;gap:.3rem;flex:1;font-size:.75rem;color:var(--wp-muted)}
.booking-confirmation{margin:1rem 0;padding:1.35rem!important;border-color:#cfdfd0}
.booking-confirmation-heading{display:flex;justify-content:space-between;align-items:start;gap:1rem}
.booking-confirmation-heading h2{font-size:1.25rem;letter-spacing:-.04em;margin:.35rem 0}
.booking-confirmation-heading>strong{color:var(--wp-green);white-space:nowrap}
.booking-confirmation-days{max-height:15rem;overflow:auto;border-top:1px solid var(--wp-line);border-bottom:1px solid var(--wp-line);margin:.8rem 0}
.booking-confirmation-days>div{display:flex;justify-content:space-between;gap:1rem;padding:.55rem .15rem;border-bottom:1px solid #edf0ec;font-size:.84rem;text-transform:capitalize}
.booking-confirmation-days>div:last-child{border-bottom:0}
.booking-confirmation-total{display:flex;justify-content:space-between;align-items:center;margin:.9rem 0;font-size:1rem}
.booking-confirmation-total strong{font-size:1.35rem;color:var(--wp-green)}
.booking-confirmation-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.8rem}
.booking-cancel-confirm{background:#fff8f6;border:1px solid #f0d8cf;border-radius:10px;padding:.85rem;margin-top:.8rem}
.booking-cancel-confirm p{font-size:.85rem;margin-bottom:.7rem}
.booking-cancel-confirm>div{display:flex;flex-wrap:wrap;gap:.5rem}
.booking-cancel-button{margin-top:.8rem}
.booking-cancelled{background:#f8faf7}
.booking-cancelled .booking-card-title>strong{color:var(--wp-muted)}
.activity-log-card{padding:1.3rem!important}
.activity-search{display:grid;gap:.4rem;margin-bottom:1rem;font-size:.8rem}
.activity-search>div{display:flex;gap:.5rem;max-width:760px}
.activity-search input{min-width:0}
.activity-results-meta{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;color:var(--wp-muted);font-size:.77rem}
.activity-table td{vertical-align:top;min-width:120px}
.activity-table td:first-child{white-space:nowrap;font-size:.78rem}
.activity-table td>strong,.activity-table td>small{display:block}
.activity-table td>small{font-size:.72rem;color:var(--wp-muted);margin-top:.15rem}
.activity-table td:last-child{min-width:280px}
.activity-table td:last-child p{margin:.35rem 0 0;white-space:normal;font-size:.82rem}
.activity-kind{display:inline-block;background:#edf3ec;color:var(--wp-green);border-radius:20px;padding:.2rem .55rem;font-size:.68rem;font-weight:600}
.activity-mode{display:inline-block;margin-left:.35rem;background:#f1f3ef;color:#69786e;border-radius:20px;padding:.12rem .4rem;font-size:.62rem;font-weight:600}
.activity-pagination{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.75rem;font-size:.78rem;color:var(--wp-muted)}
@media(max-width:600px){.my-bookings-calendar,.my-booking-list{padding:.8rem}.booking-calendar-grid .calendar-day{min-height:58px}.booking-calendar-grid .calendar-day small{font-size:.5rem}.guest-edit{align-items:stretch;flex-direction:column}.booking-card-title h3{font-size:.9rem}.booking-confirmation-heading{display:block}.booking-confirmation-heading>strong{display:inline-block;margin-top:.5rem}.booking-confirmation-actions{display:grid}.booking-confirmation-actions button{width:100%}.activity-search>div{flex-wrap:wrap}.activity-search input{flex-basis:100%}.activity-results-meta{font-size:.7rem}.activity-pagination{flex-wrap:wrap}.activity-pagination .btn{flex:1}.activity-pagination span{order:-1;width:100%;text-align:center}}
@media(max-width:800px){.owner-calendar-layout{grid-template-columns:1fr}.listing-panel{display:grid;grid-template-columns:1fr 1fr;column-gap:1rem}.listing-panel>.eyebrow,.listing-panel h3,.listing-panel>p{grid-column:1/-1}.listing-panel .price-field,.listing-selection{margin:.55rem 0}.listing-panel>button{grid-column:1/-1}}
@media(max-width:600px){.range-calendar{padding:.75rem}.range-calendar .calendar-grid{gap:.2rem}.range-calendar-days .calendar-day{min-height:55px;padding:.35rem .1rem}.range-calendar-days .calendar-day small{font-size:.56rem}.range-calendar-days .calendar-day span{margin-left:.15rem}.range-calendar .calendar-legend{justify-content:flex-start}.results-heading{display:block}.results-period{display:inline-block;margin-top:.65rem}.owner-parking-card{padding:.8rem}.owner-parking-heading h2{font-size:1.02rem}.listing-panel{display:block}.offer-row{gap:.4rem;flex-wrap:wrap}.offer-row strong{min-width:50%}.calendar-mode-switch{align-items:flex-start;flex-direction:column}}
