/* zoe run213 (12 Nov 2026; run209 + Shelly QA fixes): product-page date picker. Palette P1: teal #00313c, gold #c9a227/#d4b155, cream #f7f1e6, blush #e8d3c9.
   Scoped to .zoe-dp only. Matches the premium Add to Cart look (10px radius, gold gradient, teal text). */
.zoe-dp{box-sizing:border-box;margin:18px 0 14px;padding:16px 16px 14px;background:#f7f1e6;border:1px solid #e8d3c9;border-radius:10px;color:#00313c;font-family:"Nunito Sans",Montserrat,Arial,sans-serif;font-size:14px;line-height:1.45;min-height:150px;text-align:left}
.zoe-dp.is-ready{min-height:0}
.zoe-dp *{box-sizing:border-box}
.zoe-dp__hd{display:flex;align-items:center;gap:10px;margin:0 0 12px}
.zoe-dp__ico{flex:0 0 22px;width:22px;height:22px;background:#00313c;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='16' rx='2'/><path d='M16 3v4M8 3v4M3 10h18'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='16' rx='2'/><path d='M16 3v4M8 3v4M3 10h18'/></svg>") center/contain no-repeat}
.zoe-dp__title{font-weight:800;font-size:15px;letter-spacing:.06em;text-transform:uppercase}
.zoe-dp__seg{display:flex;gap:8px;margin:0 0 12px}
.zoe-dp .zoe-dp__opt{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:50px;padding:7px 8px;margin:0;background:#fff;color:#00313c;border:1px solid #00313c;border-radius:10px;cursor:pointer;font:inherit;font-weight:700;text-transform:none;letter-spacing:0;box-shadow:none;transition:background .15s,color .15s,box-shadow .15s}
.zoe-dp .zoe-dp__opt:hover,.zoe-dp .zoe-dp__opt:focus{background:#fbf6ea;color:#00313c;outline:0;box-shadow:0 0 0 2px rgba(201,162,39,.55)}
.zoe-dp .zoe-dp__opt.is-on{background:#00313c;color:#f7f1e6;box-shadow:0 4px 10px rgba(0,49,60,.18)}
.zoe-dp__optt{font-size:14px;line-height:1.2}
.zoe-dp__opts{font-size:11.5px;font-weight:600;line-height:1.2;color:#c9a227}
.zoe-dp .zoe-dp__opt:not(.is-on) .zoe-dp__opts{color:#7a6320}
.zoe-dp__cut{margin:0 0 8px;font-size:13px;font-weight:600}
.zoe-dp__live{margin:0 0 8px;padding:8px 10px;border-radius:8px;font-weight:700;font-size:13.5px;background:#fff;border-left:4px solid #c9a227}
.zoe-dp__live.is-open{border-left-color:#2f7d4f}
.zoe-dp__live.is-closed{border-left-color:#a0522d;color:#7a3b1d}
.zoe-dp__chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.zoe-dp__chips:empty{display:none}
.zoe-dp__chip{display:inline-block;padding:3px 9px;border-radius:999px;font-size:12px;background:#fff;border:1px solid #e8d3c9}
.zoe-dp__chip b{font-weight:800}
.zoe-dp__chip.is-open{border-color:#c9a227}
.zoe-dp__chip.is-shut{color:#8a8a8a;text-decoration:none}
.zoe-dp .zoe-dp__field{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:50px;padding:0 16px;margin:0;background:#fff;color:#00313c;border:1px solid #00313c;border-radius:10px;font:inherit;font-weight:700;font-size:15px;text-align:left;cursor:pointer;text-transform:none;letter-spacing:0;box-shadow:none}
.zoe-dp .zoe-dp__field:hover,.zoe-dp .zoe-dp__field:focus{background:#fff;color:#00313c;outline:0;box-shadow:0 0 0 2px rgba(201,162,39,.55)}
.zoe-dp .zoe-dp__field.has-val{background:linear-gradient(180deg,#d4b155 0%,#c9a227 100%);border-color:#c9a227;box-shadow:0 6px 14px rgba(0,49,60,.14)}
.zoe-dp .zoe-dp__field:disabled{opacity:.55;cursor:not-allowed}
.zoe-dp__car{flex:0 0 10px;width:10px;height:10px;border-right:2px solid #00313c;border-bottom:2px solid #00313c;transform:rotate(45deg);margin:-4px 2px 0 8px}
.zoe-dp__cal{position:relative;z-index:10001;margin:8px 0 0;padding:12px;background:#fff;border:1px solid #e8d3c9;border-radius:10px;box-shadow:0 8px 18px rgba(0,49,60,.12)}
.zoe-dp__cal[hidden]{display:none}
.zoe-dp__nav{display:flex;align-items:center;justify-content:space-between;margin:0 0 8px}
.zoe-dp__mn{font-weight:800;letter-spacing:.04em}
.zoe-dp .zoe-dp__nb{width:38px;height:38px;padding:0;margin:0;background:#f7f1e6;color:#00313c;border:1px solid #e8d3c9;border-radius:50%;font-size:22px;line-height:1;cursor:pointer;box-shadow:none}
.zoe-dp .zoe-dp__nb:disabled{opacity:.35;cursor:not-allowed}
.zoe-dp__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.zoe-dp__dw{text-align:center;font-size:11px;font-weight:800;color:#7a6320;padding:2px 0}
.zoe-dp .zoe-dp__d{aspect-ratio:1/1;min-height:38px;width:100%;padding:0;margin:0;background:#f7f1e6;color:#00313c;border:1px solid transparent;border-radius:8px;font:inherit;font-weight:700;font-size:14px;cursor:pointer;box-shadow:none;text-transform:none;letter-spacing:0}
.zoe-dp .zoe-dp__d:hover:not(:disabled),.zoe-dp .zoe-dp__d:focus:not(:disabled){background:#fff;border-color:#c9a227;color:#00313c;outline:0}
.zoe-dp .zoe-dp__d.is-today{border-color:#c9a227}
.zoe-dp .zoe-dp__d.is-sel{background:linear-gradient(180deg,#d4b155 0%,#c9a227 100%);color:#00313c;border-color:#b8921f}
.zoe-dp .zoe-dp__d.is-off{background:transparent;color:#b5b5b5;text-decoration:line-through;cursor:not-allowed;font-weight:500}
.zoe-dp__lg{margin:8px 0 0;font-size:11.5px;color:#6b6b6b}
.zoe-dp__note{margin:8px 0 0;font-size:12.5px;font-weight:600;color:#00313c}
.zoe-dp__note:empty{display:none}
.zoe-dp__note.is-err{color:#a0522d}
.zoe-dp__later{margin:8px 0 0;padding-top:8px;border-top:1px dashed #e8d3c9;font-size:12.5px;color:#4d6a72}
@media (max-width:480px){.zoe-dp{padding:14px 12px 12px;margin:14px 0 12px}.zoe-dp__title{font-size:14px;letter-spacing:.04em}.zoe-dp__seg{gap:6px}.zoe-dp .zoe-dp__opt{padding:6px 4px}.zoe-dp__optt{font-size:13px}.zoe-dp__opts{font-size:11px}.zoe-dp__cal{padding:8px}.zoe-dp .zoe-dp__d{min-height:36px;font-size:13px}}
@media (prefers-reduced-motion:reduce){.zoe-dp .zoe-dp__opt{transition:none}}
/* run213 (1): while the calendar is open (JS adds body.zoe-dp-open) the floating first-order bar (#lwpm), the chat button / welcome bubble / chooser / respond.io window
   and the sticky cart bar are hidden, so nothing sits on top of the calendar. Same hiding rule the site already uses for body.open-custom (cart drawer). Removed again when the calendar closes. */
@media (max-width:1024px){
body.zoe-dp-open #lwpm,body.zoe-dp-open .lele-fab,body.zoe-dp-open .lele-chooser,body.zoe-dp-open #lele-wb,body.zoe-dp-open #lele-sticky-cart,
body.zoe-dp-open iframe[src*="respond.io"],body.zoe-dp-open iframe[title="Webchat Widget"]{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
}
/* run213 (3): made-to-order products (JS adds zoe-dp-nosd when config product.same_day is false) keep "Baked fresh daily" but drop "Same-day delivery" from the caption under Add to Cart.
   Same selector as the site rule (.product-product #product .add-to-cart-button-wrapper::after) plus one class, so it wins; same-day products are not marked and are untouched. */
.product-product #product .add-to-cart-button-wrapper.zoe-dp-nosd::after{content:"Baked fresh daily"}
