.calendar-picker{--calendar-gap:12px;--time-column:86px;--cell-height:76px;isolation:isolate}.calendar-toolbar{display:flex;align-items:center;gap:12px;background:#efefed;padding:12px 14px 4px;min-height:56px}.calendar-arrow{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:4px;background:#fff;font:34px/1 Arial,sans-serif;color:#454a43}.calendar-arrow:hover{background:#e4eada;text-decoration:none}.calendar-arrow.disabled{opacity:.35}.calendar-arrow.next{margin-left:4px}.calendar-regular,.calendar-duration{display:inline-flex;align-items:center;justify-content:center;padding:7px 12px;border:1px solid #c8cbc4;border-radius:24px;font-size:11px;white-space:nowrap;background:#fff;line-height:1.3}.calendar-regular{border-color:var(--green);background:#f3f8ed;color:#355d21;font-weight:600}.calendar-filter{margin-left:auto}.calendar-filter label{position:relative;display:flex;flex-direction:row;align-items:center;gap:9px;font-size:11px;font-weight:400;cursor:pointer;white-space:nowrap}.calendar-filter input{position:absolute;right:0;opacity:0;width:36px;height:22px;margin:0;cursor:pointer;z-index:1}.calendar-switch{position:relative;width:36px;height:22px;border-radius:20px;background:#cdd0c9;border:1px solid #c1c4bc;transition:background .15s}.calendar-switch:after{content:'';position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0002;transition:transform .15s}.calendar-filter input:checked+.calendar-switch{background:var(--green);border-color:var(--green)}.calendar-filter input:checked+.calendar-switch:after{transform:translateX(14px)}.calendar-filter input:focus-visible+.calendar-switch{outline:3px solid var(--green);outline-offset:3px}.calendar-help{font-size:11px;color:var(--muted);margin:0;padding:10px 14px;background:#efefed}.calendar-scroll{width:100%;overflow:auto;overscroll-behavior-x:contain;scrollbar-color:#a8b59e #f2f4ef}.delivery-calendar{width:100%;min-width:660px;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:12px}.delivery-calendar caption{text-align:left}.delivery-calendar thead{background:#efefed}.delivery-calendar th,.delivery-calendar td{padding:0;border:0;vertical-align:middle;letter-spacing:0;text-transform:none}.delivery-calendar thead th{font-weight:500;background:#efefed;padding:0 0 13px var(--calendar-gap);width:calc((100% - var(--time-column))/4);color:var(--dark)}.delivery-calendar thead th:last-child{padding-right:14px}.delivery-calendar .calendar-month{width:var(--time-column);padding:0 4px 13px 12px;text-align:center}.calendar-month svg{display:block;width:30px;height:30px;margin:0 auto 3px}.calendar-month span{font-size:12px}.calendar-date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:57px;border:1px solid #9b9f96;border-radius:3px;background:#fff;line-height:1.5;font-size:13px}.calendar-date b{font-weight:500}.tomorrow-column .calendar-date{border:2px solid var(--green);background:#fafff6}.delivery-calendar .calendar-time{width:var(--time-column);text-align:center;font-size:11px;font-weight:500;background:#fff;padding:12px 4px 0;line-height:1.6;position:sticky;left:0;z-index:2}.calendar-time small{display:block;color:var(--muted);font-size:9px}.delivery-calendar tbody td{padding:12px 0 0 var(--calendar-gap);background:#fff}.delivery-calendar tbody td:last-child{padding-right:14px}.calendar-cell form{margin:0}.calendar-slot{position:relative;isolation:isolate;overflow:hidden;width:100%;height:var(--cell-height);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:1px solid #d5d6d1;border-radius:4px;background:#fff;color:var(--dark);font-size:12px;text-align:center;padding:8px;line-height:1.35;text-decoration:none}.calendar-slot b{font-size:12px;font-weight:600}.calendar-slot small{font-size:10px}.calendar-slot.available{background:#eef5e5;color:#3f6a22;border-color:#709b48}.calendar-slot.available:hover{background:#dfedcc;box-shadow:inset 0 0 0 1px #5b872f}.calendar-slot.held{background:#fff6df;color:#795512;border-color:#ba8e2d}.calendar-slot.held:hover{background:#ffedc2;text-decoration:none}.calendar-slot.unavailable,.calendar-slot.booked{background:#fff7f6;color:#a3423c;border:1px dashed #d8a49f}.calendar-slot.booked:hover{background:#fbeae7;text-decoration:none}.calendar-slot.closed{border-style:dashed;color:#8b8f86;background:#fff}.calendar-slot.future{border-style:dashed;color:#777d71;background:#fafbf8}.calendar-stamp{font-size:8px;font-weight:800;letter-spacing:.03em;opacity:.72;white-space:nowrap}.calendar-slot.unavailable .calendar-stamp,.calendar-slot.booked .calendar-stamp{position:absolute;left:50%;bottom:8px;transform:translateX(-50%) rotate(-5deg);font-size:9px;letter-spacing:.06em;opacity:.4}.calendar-slot.booked small{margin-bottom:6px}.calendar-slot.available .calendar-stamp{border:1px solid #73945177;border-radius:2px;padding:2px 4px;transform:rotate(-3deg)}.calendar-footer{display:flex;align-items:center;gap:16px;font-size:10px;padding:18px 0;color:var(--muted)}.calendar-footer>span{display:flex;align-items:center;gap:5px}.calendar-footer i{display:inline-block;width:7px;height:7px;border-radius:50%}.available-dot{background:#659336}.held-dot{background:#bb8a24}.unavailable-dot{background:#c1645e}.calendar-footer>a{margin-left:auto;text-decoration:underline}.calendar-empty{font-size:13px;padding:23px;background:#f6f7f3;text-align:center;border-radius:4px;margin:16px 0}.delivery-banner{padding:16px 20px;gap:4px}.delivery-banner b{font-size:18px}.delivery-banner span{font-size:12px}
@media(min-width:1250px){.calendar-picker{--cell-height:70px;--time-column:88px}.calendar-toolbar{gap:13px}.calendar-regular,.calendar-duration,.calendar-filter label{font-size:12px}.calendar-slot b{font-size:13px}}
@media(max-width:1100px) and (min-width:701px){.delivery-layout{grid-template-columns:minmax(0,1fr) 255px;gap:18px}.calendar-duration{display:none}.calendar-toolbar{gap:8px;padding-inline:10px}.calendar-filter label{font-size:10px}.calendar-regular{padding:6px 9px;font-size:10px}.calendar-arrow{width:28px;height:32px}.calendar-help{font-size:10px}}
@media(max-width:700px){.delivery-summary{order:initial}.calendar-picker{--cell-height:72px;--time-column:80px;--calendar-gap:10px}.calendar-toolbar{gap:9px;padding-inline:10px}.calendar-duration{display:none}.calendar-filter label{font-size:10px;gap:7px}.calendar-regular{font-size:10px;padding:7px 9px}.calendar-arrow{width:29px;height:32px}.calendar-switch{width:32px;height:20px}.calendar-switch:after{width:14px;height:14px}.calendar-filter input:checked+.calendar-switch:after{transform:translateX(12px)}.calendar-help{padding-inline:10px;font-size:10px}.calendar-footer{gap:11px;font-size:9px;flex-wrap:wrap}.calendar-footer>a{margin-left:auto}.delivery-calendar{min-width:660px}.delivery-banner b{font-size:17px}.delivery-banner span{font-size:11px}}
.calendar-toolbar.own-calendar .next{margin-left:auto}
@media(prefers-reduced-motion:reduce){.calendar-switch,.calendar-switch:after{transition:none}}
