.ifp-odm-fulfilment{border:1px solid #dcdcde;border-radius:12px;padding:16px;margin:16px 0;background:#fff}.ifp-odm-fulfilment h3{margin:0 0 12px}.ifp-odm-fulfilment__modes{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.ifp-odm-fulfilment__modes button{border:1px solid #c3c4c7;background:#f6f7f7;border-radius:8px;padding:10px 16px;cursor:pointer}.ifp-odm-fulfilment__modes button.is-active{border-color:#2271b1;box-shadow:0 0 0 1px #2271b1;background:#f0f6fc}.ifp-odm-fulfilment__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:10px}.ifp-odm-fulfilment__grid label{display:grid;gap:4px}.ifp-odm-fulfilment__grid input,.ifp-odm-fulfilment__grid select{width:100%}.ifp-odm-fulfilment__status{margin:10px 0 0;font-weight:600}@media(max-width:640px){.ifp-odm-fulfilment__grid{grid-template-columns:1fr}}.ifp-odm-fulfilment__note{margin:0 0 12px;padding:9px 11px;border-radius:8px;background:#f6f7f7;color:#50575e;font-size:13px}

.ifp-odm-blocks-compat{margin:0 0 20px}
.ifp-odm-blocks-compat .ifp-odm-fulfilment{box-shadow:0 8px 26px rgba(0,0,0,.05);border-color:#d7dce1}
.ifp-odm-fulfilment__modes button{transition:border-color .15s ease,box-shadow .15s ease,background .15s ease,transform .15s ease}
.ifp-odm-fulfilment__modes button:hover{transform:translateY(-1px)}
.ifp-odm-fulfilment__modes button:focus-visible,.ifp-odm-fulfilment__grid input:focus-visible,.ifp-odm-fulfilment__grid select:focus-visible{outline:2px solid currentColor;outline-offset:2px}


/* ODM 1.1.0 – storefront polish */
.ifp-odm-fulfilment{
  --ifp-odm-accent:#2563eb;
  --ifp-odm-border:#dbe4ef;
  --ifp-odm-muted:#66758a;
  position:relative;
  overflow:hidden;
  padding:20px;
  border-color:var(--ifp-odm-border);
  border-radius:16px;
  box-shadow:0 10px 28px rgba(15,23,42,.055)
}
.ifp-odm-fulfilment:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--ifp-odm-accent)}
.ifp-odm-fulfilment h3{font-size:20px;line-height:1.25;color:#172033}
.ifp-odm-fulfilment__modes{gap:10px}
.ifp-odm-fulfilment__modes button{min-height:44px;padding:10px 18px;border-radius:11px;font-weight:700;color:#334155}
.ifp-odm-fulfilment__modes button.is-active{color:#1d4ed8;border-color:#60a5fa;background:#eff6ff;box-shadow:0 0 0 1px #60a5fa}
.ifp-odm-fulfilment__address{padding-top:4px}
.ifp-odm-fulfilment__grid{grid-template-columns:minmax(100px,.65fr) minmax(110px,.7fr) minmax(160px,1fr);gap:12px}
.ifp-odm-fulfilment__grid label{gap:6px;font-size:12px;font-weight:700;color:#475569}
.ifp-odm-fulfilment__grid input,.ifp-odm-fulfilment__grid select{min-height:42px;border:1px solid #cbd5e1;border-radius:9px;padding:8px 10px;background:#fff}
.ifp-odm-fulfilment__grid label:nth-child(4){grid-column:span 2}
.ifp-odm-fulfilment__status{padding:11px 13px;border-radius:10px;background:#f8fafc;color:#334155;font-size:13px;line-height:1.5}
.ifp-odm-fulfilment [data-check]{min-height:40px;border-radius:9px}
@media(max-width:780px){.ifp-odm-fulfilment__grid{grid-template-columns:1fr 1fr}.ifp-odm-fulfilment__grid label:nth-child(4){grid-column:auto}}
@media(max-width:520px){.ifp-odm-fulfilment{padding:16px}.ifp-odm-fulfilment__grid{grid-template-columns:1fr}}

.ifp-odm-preorder { margin-top: 18px; padding-top: 16px; border-top: 1px solid #dbe4ed; }
.ifp-odm-preorder label { display: block; margin: 10px 0; }
.ifp-odm-preorder input, .ifp-odm-preorder select { display: block; width: 100%; max-width: 360px; padding: 8px; }
.ifp-odm-preorder [data-preorder-status] { font-weight: 600; }
.ifp-odm-preorder [hidden] { display: none !important; }
