.delivery-date-field{min-width:0;position:relative}.delivery-date-field>.field{display:flex}
#delivery-date{cursor:pointer}
.delivery-calendar{position:absolute;top:100%;left:0;width:100%;box-sizing:border-box;z-index:20;box-shadow:0 12px 32px #29352d26;margin-top:6px;padding:12px;border:1px solid #d5dacd;border-radius:10px;background:#fffdf7;max-width:360px}
.calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.delivery-calendar button{font:inherit;border:1px solid transparent;border-radius:6px;background:transparent;color:#29352d;cursor:pointer;min-height:40px;padding:4px}
.calendar-nav button{width:40px;font-size:25px}
.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}
.calendar-week{font-size:12px;color:#646d60;margin-bottom:5px}
.delivery-calendar button:hover:not(:disabled){background:#e6eadc}
.delivery-calendar button:focus-visible{outline:3px solid #853c2d;outline-offset:1px}
.delivery-calendar button:disabled{color:#9b9e96;background:#f1f1eb;cursor:not-allowed}
.calendar-days button.unavailable{text-decoration:line-through}
.calendar-days button[aria-pressed=true]{background:#536346;color:white;border-color:#29352d}
.delivery-calendar p{font-size:13px;line-height:1.5;margin:10px 0 0;color:#626b5d}
.delivery-calendar .calendar-retry{font-size:14px;text-decoration:underline;margin-top:6px}
.delivery-calendar[hidden],.delivery-calendar [hidden]{display:none}

.delivery-calendar .calendar-close{display:block;margin:0 0 4px auto;font-size:14px;text-decoration:underline;min-height:36px;padding:4px 8px}
@media(max-width:720px){.delivery-calendar{position:fixed;top:auto;bottom:16px;left:16px;width:calc(100% - 32px);max-width:none;max-height:70dvh;overflow-y:auto;overscroll-behavior:contain}.delivery-calendar button{min-height:44px}}
