/* Local Pass and Daily delivery, the customer's page (block elathi-commerce/my-local). */
.ec-ml{--ml-ink:#14210F;--ml-ink2:#2E3A2B;--ml-muted:#4A5546;--ml-faint:#6B7166;--ml-line:#E3E8DE;--ml-line2:#CFD8C8;--ml-green:#318616;--ml-gdark:#1F6B2E;--ml-gdeep:#134A1E;--ml-lime:#C6E89A;--ml-sky:#EAF3FA;--ml-skyline:#C9DDEC;--ml-skyink:#1F5F8B;--ml-red:#B3361F;--ml-ease:cubic-bezier(.65,0,.35,1);--ml-spring:cubic-bezier(.34,1.56,.64,1);display:grid;gap:18px;max-width:720px;margin:0 auto;color:var(--ml-ink)}
.ec-ml [hidden]{display:none!important}
.ec-ml button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
.ec-ml button:focus-visible,.ec-ml a:focus-visible{outline:2px solid var(--ml-gdark);outline-offset:2px}
.ec-ml h2,.ec-ml h3{margin:0;letter-spacing:-.01em}
.ec-ml-empty{display:grid;gap:10px;padding:22px 18px;border-radius:22px;background:#F6F7F4;border:1.5px dashed var(--ml-line2)}
.ec-ml-empty h2{font-size:20px}
.ec-ml-empty p{margin:0;font-size:14px;line-height:1.5;color:var(--ml-muted)}
.ec-ml-btn{justify-self:start;display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 18px;border:0;border-radius:12px;background:#1F6B2E;color:#FFFFFF;font-size:14px;font-weight:800;text-decoration:none;transition:transform .2s var(--ml-spring),background-color .2s ease}
.ec-ml-btn:active{transform:scale(.97)}
.ec-ml-note{display:flex;gap:8px;align-items:flex-start;margin:0;font-size:12.5px;line-height:1.45;color:var(--ml-muted)}
.ec-ml-note svg{flex:0 0 auto;width:16px;height:16px;margin-top:1px}
.ec-ml svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* Local Pass card */
.ec-ml .mp{position:relative;display:grid;gap:12px;padding:18px 16px 16px;border-radius:22px;background:var(--ml-gdeep);color:#FFFFFF;overflow:hidden}
.ec-ml .mp::after{content:"";position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:50%;border:16px solid rgba(198,232,154,.14);pointer-events:none}
.ec-ml .mp>*{position:relative;z-index:1}
.ec-ml .mp .tag{justify-self:start;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--ml-lime);color:var(--ml-gdeep);font-size:11px;font-weight:800;letter-spacing:.08em}
.ec-ml .mp .tag svg{width:14px;height:14px}
.ec-ml .mp.off .tag{background:rgba(255,255,255,.16);color:#FFFFFF}
.ec-ml .mp h2{font-size:22px;line-height:1.2}
.ec-ml .mp h2 em{font-style:normal;color:var(--ml-lime)}
.ec-ml .mp ul{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:13px;color:#D6EBC7}
.ec-ml .mp li{display:flex;gap:8px;align-items:center}
.ec-ml .mp li svg{width:16px;height:16px;flex:0 0 auto;color:var(--ml-lime);stroke-width:2.6}
.ec-ml .mp .rn{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.14);font-size:12.5px;line-height:1.45;color:#D6EBC7}
.ec-ml .mp .rn b{display:block;font-size:14px;color:#FFFFFF}
.ec-ml .sw{position:relative;flex:0 0 auto;width:52px;height:30px;padding:0;border:0;border-radius:15px;background:rgba(255,255,255,.25);transition:background-color .25s ease}
.ec-ml .sw::after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#FFFFFF;transition:transform .3s var(--ml-ease),background-color .25s ease}
.ec-ml .sw[aria-checked="true"]{background:var(--ml-lime)}
.ec-ml .sw[aria-checked="true"]::after{transform:translateX(22px);background:var(--ml-gdeep)}
.ec-ml .sw:disabled{opacity:.5}
.ec-ml .mp .pay{justify-self:start;display:inline-flex;align-items:center;height:42px;padding:0 16px;border-radius:12px;background:var(--ml-lime);color:var(--ml-gdeep);font-size:13.5px;font-weight:800;text-decoration:none}

/* Local Pass card (mock account-pages, 2026-10-30) */
.ec-ml .mp .kick{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--ml-lime)}
.ec-ml .mp .kick svg{width:15px;height:15px}
.ec-ml .mp .sub{margin:0;font-size:13px;line-height:1.45;color:#D6EBC7}
.ec-ml .mp .sub b{color:#FFFFFF}
.ec-ml .mp .meter{display:block;height:8px;border-radius:999px;background:rgba(255,255,255,.16);overflow:hidden}
.ec-ml .mp .meter i{display:block;height:100%;border-radius:999px;background:var(--ml-lime);transform-origin:left;animation:ecmlm .6s var(--ml-ease) both}
@keyframes ecmlm{from{transform:scaleX(0)}to{transform:none}}
.ec-ml-sub{margin:4px 0 -6px;font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--ml-faint)}

/* Repeat order card */
.ec-ml .dp{display:grid;gap:12px;padding:14px;border-radius:20px;background:#FFFFFF;border:1px solid var(--ml-line)}
.ec-ml .dp-h{display:grid;grid-template-columns:40px minmax(0,1fr) auto auto;align-items:center;gap:10px}
.ec-ml .dic{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#F4FAEE;color:var(--ml-gdark)}
.ec-ml .dic.s{background:#FFF6E5;color:#8A5208}
.ec-ml .dic svg{width:19px;height:19px}
.ec-ml .dt{min-width:0}
.ec-ml .dt h3{font-size:14.5px;line-height:1.3;overflow-wrap:anywhere}
.ec-ml .dt h3 span{font-weight:600;color:var(--ml-muted);font-size:13px}
.ec-ml .dt p{margin:2px 0 0;font-size:12.5px;line-height:1.4;color:var(--ml-muted)}
.ec-ml .pill{flex:0 0 auto;padding:3px 9px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.06em;white-space:nowrap;background:#FFF6E5;color:#7A4E00}
.ec-ml .pill.stop{background:#F2F3F0;color:var(--ml-muted)}
.ec-ml .chg{display:inline-flex;align-items:center;gap:4px;height:34px;padding:0 10px;border-radius:10px;border:1.5px solid var(--ml-line2);background:#FFFFFF;color:var(--ml-ink);font-size:12.5px;font-weight:800;transition:border-color .2s ease,transform .15s ease}
.ec-ml .chg svg,.ec-ml .key .wk svg{width:14px;height:14px;transition:transform .25s var(--ml-ease)}
.ec-ml [aria-expanded="true"] svg{transform:rotate(180deg)}
.ec-ml .chg:active{transform:scale(.96)}
.ec-ml .next{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:#F4FAEE;color:var(--ml-ink2);font-size:12.5px;line-height:1.4}
.ec-ml .next svg{width:20px;height:20px;flex:0 0 auto;color:var(--ml-gdark)}
.ec-ml .next b{display:block;font-size:14px;color:var(--ml-ink)}
.ec-ml .next.warn{background:#FFF6E5;color:#5E3805}
.ec-ml .next.warn svg{color:#8A5208}
.ec-ml .next.warn b{color:#3F2603}
.ec-ml .next a{margin-left:auto;display:inline-flex;align-items:center;height:36px;padding:0 14px;border-radius:10px;background:#8A5208;color:#FFFFFF;font-size:13px;font-weight:800;text-decoration:none}
.ec-ml .cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.ec-ml .cal button{display:grid;justify-items:center;align-content:center;gap:1px;min-height:52px;padding:5px 0;border-radius:10px;border:0;background:var(--ml-bg,#F6F7F4);color:var(--ml-faint);transition:background-color .2s ease,color .2s ease,transform .2s var(--ml-spring)}
.ec-ml .cal button:active{transform:scale(.93)}
.ec-ml .cal small{font-size:10px;font-weight:800;letter-spacing:.04em}
.ec-ml .cal b{font-size:15px;line-height:1.2;color:var(--ml-ink);font-variant-numeric:tabular-nums}
.ec-ml .cal em{font-style:normal;font-size:8.5px;font-weight:800;letter-spacing:.04em}
.ec-ml .cal .on{background:#F4FAEE;color:var(--ml-gdark)}
.ec-ml .cal .on.unpaid{background:#FFF6E5;color:#7A4E00}
.ec-ml .cal .skip{background:#FFF6E5;color:#8A5208}
.ec-ml .cal .skip b{text-decoration:line-through;color:#8A5208}
.ec-ml .cal .done{background:var(--ml-gdark);color:#D6EBC7}
.ec-ml .cal .done b{color:#FFFFFF}
.ec-ml .cal .done.miss{background:#EEF1EB;color:var(--ml-muted)}
.ec-ml .cal .done.miss b{color:var(--ml-muted)}
.ec-ml .cal .none{opacity:.45;cursor:default}
.ec-ml .cal .lock{cursor:default}
.ec-ml .key{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0;font-size:11.5px;color:var(--ml-muted)}
.ec-ml .key i{display:inline-block;width:10px;height:10px;margin-right:5px;border-radius:3px;vertical-align:-1px}
.ec-ml .key .k1{background:#E3F1D6}
.ec-ml .key .k2{background:#FBE6C2}
.ec-ml .key .k3{background:var(--ml-gdark)}
.ec-ml .key .wk{margin-left:auto;display:inline-flex;align-items:center;gap:3px;padding:4px 0;border:0;background:none;color:var(--ml-gdark);font-size:12px;font-weight:800}
.ec-ml .hint{margin:0;font-size:12px;line-height:1.45;color:var(--ml-muted)}
.ec-ml .more{display:grid;gap:10px;padding-top:12px;border-top:1px solid #EEF1EB}
.ec-ml .items{display:grid;gap:8px}
.ec-ml .it{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border-radius:16px;background:#F6F7F4}
.ec-ml .it img{width:52px;height:52px;border-radius:11px;background:#FFFFFF;object-fit:contain}
.ec-ml .it h4{margin:0;font-size:13.5px;line-height:1.3}
.ec-ml .it .meta{display:block;margin-top:2px;font-size:12px;color:var(--ml-muted)}
.ec-ml .qty{display:flex;align-items:center;height:34px;border-radius:999px;background:var(--ml-green);color:#FFFFFF}
.ec-ml .qty button{width:32px;height:34px;border:0;background:none;color:#FFFFFF;font-size:17px;font-weight:800;transition:transform .2s var(--ml-spring)}
.ec-ml .qty button:active{transform:scale(.85)}
.ec-ml .qty button:disabled{opacity:.4;cursor:default}
.ec-ml .qty output{min-width:18px;text-align:center;font-weight:800;font-variant-numeric:tabular-nums}
.ec-ml .days{grid-column:1/-1;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.ec-ml .days button{height:34px;padding:0;border-radius:10px;border:1.5px solid var(--ml-line2);background:#FFFFFF;color:var(--ml-muted);font-size:11.5px;font-weight:800;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s var(--ml-spring)}
.ec-ml .days button:active{transform:scale(.92)}
.ec-ml .days button[aria-pressed="true"]{background:var(--ml-ink);border-color:var(--ml-ink);color:#FFFFFF}
.ec-ml .days button:disabled{border-style:dashed;opacity:.5;cursor:not-allowed}
.ec-ml .money{display:grid;gap:6px;padding:12px;border-radius:14px;background:#F6F7F4;font-size:13px;color:var(--ml-ink2)}
.ec-ml .money div{display:flex;justify-content:space-between;gap:10px}
.ec-ml .money b{color:var(--ml-ink)}
.ec-ml .acts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ec-ml .acts button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:42px;padding:0 12px;border-radius:12px;border:1.5px solid var(--ml-line2);background:#FFFFFF;color:var(--ml-ink);font-size:13px;font-weight:800;transition:transform .2s var(--ml-spring),background-color .2s ease,color .2s ease,border-color .2s ease}
.ec-ml .acts button svg{width:16px;height:16px}
.ec-ml .acts button:active{transform:scale(.97)}
.ec-ml .acts .stop{color:var(--ml-red);border-color:#EBC2B8}
.ec-ml .acts .stop.sure{border-color:var(--ml-red);background:var(--ml-red);color:#FFFFFF}
.ec-ml .pzs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.ec-ml .pzs button{height:38px;border-radius:10px;border:1.5px solid var(--ml-line2);background:#F6F7F4;color:var(--ml-ink);font-size:12.5px;font-weight:800}
.ec-ml .busy{opacity:.6;pointer-events:none}
.ec-ml-toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));z-index:99;max-width:calc(100vw - 32px);padding:12px 16px;border-radius:14px;background:#14210F;color:#FFFFFF;font:600 13.5px/1.4 "Plus Jakarta Sans",system-ui,sans-serif;transform:translateX(-50%);animation:ecmlt .3s var(--ml-ease,ease)}
@keyframes ecmlt{from{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%,0)}}
@media (min-width:640px){.ec-ml .dp{padding:18px}.ec-ml .mp{padding:22px}.ec-ml .cal button{min-height:58px}}
@media (hover:hover){.ec-ml .acts button:not(.stop):hover,.ec-ml .chg:hover,.ec-ml .pzs button:hover{border-color:var(--ml-gdark)}.ec-ml .cal button:not(.none):not(.lock):not(.done):hover{box-shadow:inset 0 0 0 1.5px var(--ml-gdark)}}
@media (prefers-reduced-motion:reduce){.ec-ml *,.ec-ml-toast{transition:none!important;animation:none!important}}
/* the theme's heading and output styles stay out of these cards */
.ec-ml h2,.ec-ml h3,.ec-ml h4{margin:0!important;font-family:inherit!important}
.ec-ml .mp h2{font-size:24px!important;line-height:1.2!important;color:#FFFFFF!important}
.ec-ml .mp h2 em{color:var(--ml-lime)!important}
.ec-ml .dt h3{font-size:15px!important;line-height:1.3!important;color:var(--ml-ink)!important}
.ec-ml .it h4{font-size:13.5px!important;line-height:1.3!important;color:var(--ml-ink)!important}
.ec-ml .qty output{display:block;min-width:20px;font-size:14px!important;line-height:34px!important;color:#FFFFFF!important;text-align:center}
