.efs{border:1px solid #dfbdcf;border-radius:14px;background:white;padding:22px;margin-top:24px;min-width:0}.efs legend{padding:0 8px;font-weight:700}.efs-option{display:flex;align-items:center;gap:10px;padding:10px 0;cursor:pointer;min-height:44px}.efs input{accent-color:#853b5c;width:20px;height:20px}.efs p{margin:4px 0 12px}.efs small{display:block;color:#695c64}.efs-month{display:flex;align-items:center;justify-content:space-between;margin:16px 0}.efs button{min-height:44px;min-width:40px;border:1px solid #ead5df;border-radius:8px;background:white;color:#493641;font:inherit;cursor:pointer}.efs button:disabled{background:#f6f3f4;color:#aaa2a7;cursor:default}.efs button:focus-visible{outline:3px solid #853b5c;outline-offset:2px}.efs button[aria-pressed=true]{background:#853b5c;color:white}.efs-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.efs-days>span{text-align:center;font-size:13px}.efs-selection{font-weight:700}.efs-error{color:#a02140}.efs-picker[hidden]{display:none}@media(max-width:400px){.efs{padding:12px}.efs-days{gap:3px}.efs button{min-width:0}} .efs-cart{margin:20px 0;padding:18px;border:1px solid #dfbdcf;border-radius:12px;background:#fffaf5}.efs-cart h3{margin:0 0 16px;font-size:20px}.efs-cart>div{padding:12px 0;border-top:1px solid #ead5df}#efs-message{padding:14px;border:1px solid #a02140;border-radius:8px;background:#fff7f9;color:#8b2139}
/* The live Shoptet theme hides native radios; our wrapping labels do not use
   its replacement widgets. Restore only radios inside this calendar. */
:is(#efs-product-calendar,#efs-cart-calendar) .efs-option input[type="radio"],
.efs .efs-option input[type="radio"] {
  display:inline-block !important;
  position:static !important;
  opacity:1 !important;
  visibility:visible !important;
  appearance:auto !important;
  width:20px !important;
  height:20px !important;
  min-width:20px !important;
  min-height:20px !important;
  margin:0 !important;
  padding:0 !important;
  clip:auto !important;
  clip-path:none !important;
  transform:none !important;
  pointer-events:auto !important;
  flex:0 0 20px;
  accent-color:#853b5c;
}
.efs .efs-option:has(input:checked) {color:#853b5c;font-weight:700;}
.efs .efs-option input[type="radio"]:focus-visible {outline:2px solid #853b5c;outline-offset:3px;}

/* Compact shipping choices. Scoped to this module; checkout logic is unchanged. */
.efs {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:18px 0 14px;
  padding:16px;
  border:1px solid #ead5df;
  border-radius:16px;
  background:#fff;
  color:#493641;
  box-shadow:0 3px 14px rgba(96,52,74,.035);
}
.efs legend {padding:0 6px;font-size:15px;line-height:1.4;font-weight:700;letter-spacing:0;max-width:100%;}
.efs .efs-option {
  display:flex;
  align-items:center;
  gap:9px;
  margin:0;
  padding:13px 12px;
  min-height:54px;
  border:1px solid #e7dce2;
  border-radius:11px;
  background:#fff;
  color:#66555f;
  font-size:14px;
  line-height:1.35;
  font-weight:500;
  transition:border-color .15s ease,background-color .15s ease;
}
.efs .efs-option:first-of-type {grid-column:1;grid-row:1;}
.efs .efs-option:nth-of-type(2) {grid-column:2;grid-row:1;}
.efs .efs-option:hover {border-color:#bd819c;background:#fffafd;}
.efs .efs-option:has(input:checked) {border-color:#b76b8b;background:#fcf0f6;color:#793a58;font-weight:700;}
.efs .efs-option:focus-within {outline:2px solid #853b5c;outline-offset:2px;}
.efs .efs-option input[type="radio"] {flex-basis:18px;width:18px !important;height:18px !important;min-width:18px !important;min-height:18px !important;}
.efs > p,.efs > small,.efs-picker {grid-column:1/-1;}
.efs > p:first-of-type {grid-row:2;font-size:13px;line-height:1.5;color:#74616c;margin:0;}
.efs .efs-selection {margin:0;font-size:13px;line-height:1.5;color:#793a58;}
.efs:has(input[value="asap"]:checked) .efs-selection {display:none;}
.efs .efs-error:empty {display:none;}
.efs .efs-error {margin:0;font-size:13px;line-height:1.5;}
.efs small {margin:0;padding-top:10px;border-top:1px solid #f1e5eb;font-size:12px;line-height:1.5;color:#82717b;}
.efs .efs-month {margin:0 0 12px;}
.efs .efs-month strong {font-size:14px;text-transform:capitalize;}
.efs .efs-month button {border-color:transparent;background:#fcf6f9;width:36px;min-width:36px;}
.efs .efs-days {gap:5px;}
.efs .efs-days button {font-size:13px;min-width:0;border-radius:9px;}
.efs .efs-days > span {font-size:11px;color:#887780;}
.efs .efs-days button:disabled {background:#faf7f9;border-color:#f2e9ee;color:#b9abb3;}
.efs .efs-days button[aria-pressed="true"] {border-color:#853b5c;background:#853b5c;box-shadow:0 3px 8px #853b5c25;}
@media(max-width:400px){.efs{padding:13px;gap:10px}.efs .efs-option{padding:12px 9px;font-size:13px;min-height:60px}.efs legend{font-size:14px}.efs .efs-days{gap:4px}}
@media(prefers-reduced-motion:reduce){.efs .efs-option{transition:none}}
