#cartDrawer{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}
#cartDrawer .cart-drawer--header{flex:none}
#cartDrawer .cart-main{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
#cartDrawer .cart-drawer--checkout{position:relative;bottom:auto;flex:none;padding:12px 16px;box-shadow:0 -2px 9px rgba(0,0,0,.12)}
#cartDrawer .cart-drawer--totals{padding-bottom:10px}
.jmf-fulfilment{font-family:var(--font-secondary,"graphie",sans-serif);font-size:14px;line-height:1.3;color:var(--color-black,#4a4a4a);margin:0 0 10px}
.jmf-fulfilment__choices{border:0;padding:0;margin:0 0 8px;min-width:0}
.jmf-fulfilment__choices legend{font-family:inherit;font-weight:700;font-size:14px;line-height:18px;margin-bottom:6px;padding:0}
.jmf-fulfilment__segments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.jmf-fulfilment__segments label{position:relative;display:block;min-width:0;cursor:pointer}
.jmf-fulfilment__segments input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.jmf-fulfilment__segments span{display:flex;align-items:center;justify-content:center;min-height:36px;padding:6px 8px;border:1px solid var(--color-grey,#cbd2d6);border-radius:4px;background:var(--color-white,#fff);font:600 13px/18px var(--font-secondary,"graphie",sans-serif);text-align:center}
.jmf-fulfilment__segments input:checked+span{background:var(--color-blue-light,#f2feff);border-color:var(--color-blue,#60a7af);color:var(--color-black-dark,#323338)}
.jmf-fulfilment__segments input:focus-visible+span{outline:2px solid var(--color-blue-link,#2380be);outline-offset:2px}
.jmf-fulfilment__date-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px}
.jmf-fulfilment__date-label{font-weight:600;white-space:nowrap}
.jmf-fulfilment__date-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;box-sizing:border-box;min-width:0;width:100%;height:38px;padding:5px 9px;background:#fff;border:1px solid var(--color-grey,#cbd2d6);border-radius:4px;color:inherit;font:inherit;text-align:left;cursor:pointer}
.jmf-fulfilment__date-trigger:disabled{opacity:.55;cursor:not-allowed}
.jmf-fulfilment__date-trigger:focus-visible{outline:2px solid var(--color-blue-link,#2380be);outline-offset:2px}
.jmf-fulfilment__hint,.jmf-fulfilment__notice{font:400 12px/16px var(--font-secondary,"graphie",sans-serif);margin:4px 0 0;color:var(--color-black,#4a4a4a)}
.jmf-fulfilment__error{font:600 12px/16px var(--font-secondary,"graphie",sans-serif);color:#9d2525;margin:5px 0 0}
.jmf-fulfilment__error[hidden]{display:none}
@media(max-width:360px){#cartDrawer .cart-drawer--checkout{padding:10px 12px}.jmf-fulfilment__date-row{gap:6px}.jmf-fulfilment__segments span{min-height:34px}}
@media(max-height:590px){#cartDrawer .cart-main{min-height:96px}#cartDrawer .cart-drawer--checkout{max-height:calc(100dvh - 148px);overflow-y:auto}}
.jmf-calendar{position:fixed;inset:0;box-sizing:border-box;width:min(340px,calc(100vw - 24px));max-height:min(560px,calc(100dvh - 24px));padding:16px;border:1px solid var(--color-grey,#cbd2d6);border-radius:8px;background:#fff;color:var(--color-black,#4a4a4a);font:14px/1.3 var(--font-secondary,"graphie",sans-serif);box-shadow:0 12px 32px rgba(0,0,0,.18)}
.jmf-calendar::backdrop{background:rgba(16,24,32,.55)}
.jmf-calendar__header,.jmf-calendar__navigation{display:flex;align-items:center;justify-content:space-between;gap:12px}
.jmf-calendar__header h2{font:700 16px/22px var(--font-secondary,"graphie",sans-serif)}
.jmf-calendar__header button,.jmf-calendar__navigation button{display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:4px;background:transparent;color:inherit;font:26px/1 var(--font-secondary,"graphie",sans-serif);cursor:pointer}
.jmf-calendar__header button:hover,.jmf-calendar__navigation button:hover:not(:disabled){background:var(--color-blue-light,#f2feff)}
.jmf-calendar__navigation button:disabled{opacity:.3;cursor:not-allowed}
.jmf-calendar__weekdays,.jmf-calendar__days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}
.jmf-calendar__weekdays{font-size:11px;font-weight:700;margin:10px 0 5px}
.jmf-calendar__days button,.jmf-calendar__days span{display:grid;place-items:center;min-width:0;min-height:38px;border:0;border-radius:4px;font:600 13px/1 var(--font-secondary,"graphie",sans-serif)}
.jmf-calendar__days button{background:var(--color-blue-light,#f2feff);color:var(--color-black-dark,#323338);cursor:pointer}
.jmf-calendar__days button:hover,.jmf-calendar__days button[aria-current="date"]{background:var(--color-blue,#60a7af);color:#fff}
.jmf-calendar__days button:disabled{background:transparent;color:#92999c;cursor:not-allowed;text-decoration:line-through}
.jmf-calendar__days button:focus-visible,.jmf-calendar__header button:focus-visible,.jmf-calendar__navigation button:focus-visible{outline:2px solid var(--color-blue-link,#2380be);outline-offset:2px}
.jmf-calendar__help{font:400 12px/16px var(--font-secondary,"graphie",sans-serif);margin:10px 0 0}

.jmf-checkout-date{display:flex;flex-direction:column;gap:3px;margin:8px 0 10px;padding:10px 12px;border-left:3px solid var(--color-blue,#60a7af);background:var(--color-blue-light,#f2feff);font-family:var(--font-secondary,"graphie",sans-serif);line-height:1.35;color:var(--color-black-dark,#323338)}
.jmf-checkout-date[hidden]{display:none}
.jmf-checkout-date span{font-size:12px}
.jmf-checkout-date strong{font-size:15px;font-weight:600}
