/* Scope everything to the boat reservation calendar; other themes are unaffected. */
.service-nightly-calendar{display:block;margin:8px 0 16px;color:#1c3135;max-width:100%;box-sizing:border-box}
.service-nightly-calendar *{box-sizing:border-box}
.service-nightly-calendar .service-nightly-picks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}
.service-nightly-calendar .service-nightly-pick{min-width:0;border-radius:12px;border:1px solid #d5e1e3;background:#fff;color:#223a3c;padding:12px 13px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;cursor:pointer;text-align:start;box-shadow:none;transition:border-color .15s,background .15s}
.service-nightly-calendar .service-nightly-pick.active{border-color:#a67e45;background:#fffbf4;box-shadow:inset 0 0 0 1px #a67e45}
.service-nightly-calendar .service-nightly-pick small{font-size:12px;font-weight:650;opacity:.75}
.service-nightly-calendar .service-nightly-pick strong{font-size:14px;font-weight:750;white-space:normal;line-height:1.4}
.service-nightly-calendar .service-nightly-cal-panel{max-width:550px;border:1px solid #dce6e7;border-radius:14px;padding:15px;background:#fff;box-shadow:0 4px 16px rgba(10,40,50,.05)}
.service-nightly-calendar .service-nightly-cal-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:8px}
.service-nightly-calendar .service-nightly-cal-toolbar strong{font-size:17px;text-align:center;text-transform:capitalize;font-weight:750}
.service-nightly-calendar .service-nightly-cal-toolbar button{display:grid;place-items:center;width:38px;height:36px;min-width:38px;border:1px solid #dce6e7;border-radius:9px;background:#f7faf9;color:#244244;font-size:25px;cursor:pointer}
.service-nightly-calendar .service-nightly-cal-toolbar button:disabled{opacity:.35;cursor:not-allowed}
.service-nightly-calendar .service-nightly-weekdays,.service-nightly-calendar .service-nightly-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;direction:ltr}
.service-nightly-calendar .service-nightly-weekdays{margin-bottom:5px}
.service-nightly-calendar .service-nightly-weekdays span{font-size:12px;font-weight:750;text-align:center;color:#738586;padding:7px 0;min-width:0;overflow:hidden}
.service-nightly-calendar .service-nightly-day{min-width:0;aspect-ratio:1/1;max-height:49px;border:1px solid transparent;border-radius:9px;display:grid;place-items:center;padding:0;background:#f7f9f8;color:#263d3f;font-size:14px;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s}
.service-nightly-calendar .service-nightly-day:hover:not(:disabled){background:#e6f0ed;border-color:#a5c6bb}
.service-nightly-calendar .service-nightly-day.today:not(.selected){border-color:#b1c8be}
.service-nightly-calendar .service-nightly-day.in-range{background:#e6eee9;border-radius:5px}
.service-nightly-calendar .service-nightly-day.selected{background:#937044;color:#fff;border-color:#937044;font-weight:800}
.service-nightly-calendar .service-nightly-day.unavailable{opacity:.27;color:#738281;text-decoration:line-through;cursor:not-allowed;background:#f1f3f4}
.service-nightly-calendar .service-nightly-help{padding-top:12px;min-height:30px;font-size:13px;font-weight:650;color:#46645e}
@media(max-width:480px){.service-nightly-calendar .service-nightly-cal-panel{padding:10px;border-radius:12px}.service-nightly-calendar .service-nightly-pick{padding:10px 9px}.service-nightly-calendar .service-nightly-pick strong{font-size:12px}.service-nightly-calendar .service-nightly-days,.service-nightly-calendar .service-nightly-weekdays{gap:2px}.service-nightly-calendar .service-nightly-day{border-radius:7px;font-size:13px}}

/* One-date mode uses the same localized calendar, without a checkout column. */
.service-nightly-calendar[data-kind="single"] .service-nightly-picks{grid-template-columns:1fr}
.service-nightly-calendar[data-kind="single"] .service-nightly-pick{width:100%}
