/* Local exclusive (owner, 2026-10-30, mock local-back round 3): switch, slim golden Local Pass ticket, the cards. */
.elx{--x-ink:var(--pns-ink,#14210F);--x-muted:var(--pns-muted,#4A5546);--x-line:var(--pns-line,#E3E8DE);--x-line2:var(--pns-line-strong,#CFD8C8);--x-gdark:var(--pns-green-dark,#1F6B2E);--x-gdeep:#134A1E;--x-bg:var(--pns-surface,#F6F7F4);color:var(--x-ink)}
.elx-in{max-width:var(--pns-max,1180px);margin:0 auto;padding:16px 16px 8px;display:grid;gap:14px}
.elx-i{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
/* switch: a white pill slides under the chosen one */
.elx-sw{--x:0;position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px;border-radius:16px;background:var(--x-gdeep);max-width:520px}
.elx-sw .ind{position:absolute;top:4px;bottom:4px;left:4px;width:calc((100% - 8px) / 3);border-radius:12px;background:#FFFFFF;transform:translateX(calc(var(--x) * 100%));transition:transform .35s cubic-bezier(.65,0,.35,1)}
.elx-sw button{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:42px;padding:0 6px;border:0;border-radius:12px;background:none;color:#FFFFFF;font:inherit;font-size:13.5px;font-weight:800;cursor:pointer;transition:color .3s ease}
.elx-sw button .elx-i{width:16px;height:16px}
.elx-si{display:inline-flex}
.elx-st small{display:none}
.elx-st b{font-weight:800}
.elx-side,.elx-main{display:grid;gap:14px;align-content:start;min-width:0}
.elx-sw button[aria-selected="true"]{color:var(--x-gdeep)}
.elx-sw button:focus-visible{outline:2px solid #C6E89A;outline-offset:2px}
/* who is looking (class on <html>, set before paint) */
.elx-line{margin:-4px 0 0;font-size:13px;color:var(--x-muted)}
.elx-near{display:none;align-items:center;gap:6px}
.ew-near .elx-near{display:inline-flex}
.elx-near .elx-i{width:15px;height:15px;color:var(--x-gdark)}
.elx-note{display:none;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:16px;font-size:13px;line-height:1.45}
.elx-note b{display:block;font-size:14px}
.ew-town .elx-town,.ew-far .elx-far,.ew-unk .elx-unk{display:flex}
.elx-town,.elx-unk{background:#FFF6E5;color:#5E3805}
.elx-town b,.elx-unk b{color:#3F2603}
.elx-far{background:#EAF3FB;color:#123F5E}
.elx-note a{font-weight:800;color:inherit}
.elx-chg{padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:800;text-decoration:underline;cursor:pointer}
.elx-near .elx-chg{color:var(--x-gdark)}
/* the pass: a slim golden ticket with real notches cut out and a tear line */
.elx-tk{--cut:calc(100% - 104px);position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;max-width:520px;border-radius:14px;background:#F7D88A;color:#4A3305;
-webkit-mask:radial-gradient(circle 8px at var(--cut) 0,#0000 98%,#000) top/100% 51% no-repeat,radial-gradient(circle 8px at var(--cut) 100%,#0000 98%,#000) bottom/100% 51% no-repeat;
mask:radial-gradient(circle 8px at var(--cut) 0,#0000 98%,#000) top/100% 51% no-repeat,radial-gradient(circle 8px at var(--cut) 100%,#0000 98%,#000) bottom/100% 51% no-repeat}
.ew-town .elx-tk,.ew-far .elx-tk{display:none}
.elx-tl{display:flex;align-items:center;gap:10px;padding:10px 12px;min-width:0}
.elx-ti{width:34px;height:34px;border-radius:10px;background:#FBE7B5;color:#7A5408;display:flex;align-items:center;justify-content:center;flex:none}
.elx-ti .elx-i{width:17px;height:17px}
.elx-tl em{display:block;font-style:normal;font-size:9.5px;font-weight:800;letter-spacing:.12em;color:#7A5408}
.elx-tl b{display:block;font-size:13.5px;line-height:1.25;color:#2E1F02}
.elx-tr{width:104px;display:grid;justify-items:center;align-content:center;gap:4px;padding:8px 6px;background:linear-gradient(#D9AE4E 50%,#0000 0) 0 12px/1.5px 7px repeat-y}
.elx-tr b{font-size:16px;line-height:1;color:#2E1F02}
.elx-tr b i{font-style:normal;font-size:10.5px;font-weight:700;color:#7A5408}
.elx-tr b[hidden]{display:none}
.elx-tr a{display:inline-flex;align-items:center;height:28px;padding:0 12px;border-radius:8px;background:#2E1F02;color:#F7D88A!important;font-size:11.5px;font-weight:800;text-decoration:none!important;transition:transform .15s ease,opacity .2s ease}
.elx-tr a:active{transform:scale(.95)}
.elx-tr a.busy{opacity:.6;pointer-events:none}
.elx-tk.on .elx-tr a,.elx-tk.in .elx-tr a{height:32px}
/* the cards */
.elx .ef-sh{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:2px 0 10px}
.elx .ef-sh h2{margin:0;font-size:18px;line-height:1.3}
.elx-sdw{font-size:12px;color:var(--x-muted)}
.elx-p[hidden]{display:none}
.elx-none,.elx-hint{margin:0;padding:14px;border-radius:16px;background:#FFFFFF;border:1px dashed var(--x-line2);font-size:13px;color:var(--x-muted)}
.elx-hint{margin-top:12px;border-style:solid;border-color:var(--x-line)}
@media (min-width:783px){.elx-in{padding:24px var(--pns-gutter,24px) 12px;gap:16px}}
/* computers: a white side panel (the three ways as a list, the address, the pass), the cards beside it (owner, 2026-10-30, layout 2) */
@media (min-width:960px){
.elx-in{grid-template-columns:300px minmax(0,1fr);gap:24px;align-items:start}
.elx-side{position:sticky;top:96px;gap:12px;padding:16px;border-radius:22px;background:#FFFFFF;border:1px solid var(--x-line)}
.elx-sw{grid-template-columns:1fr;gap:4px;padding:0;background:none;max-width:none}
.elx-sw .ind{left:0;right:0;top:0;bottom:auto;width:auto;height:calc((100% - 8px) / 3);border-radius:14px;background:#F4FAEE;transform:translateY(calc(var(--x) * (100% + 4px)))}
.elx-sw button{justify-content:flex-start;gap:10px;height:auto;padding:10px;border-radius:14px;color:var(--x-ink);text-align:left}
.elx-sw button[aria-selected="true"]{color:var(--x-ink)}
.elx-si{width:36px;height:36px;border-radius:11px;background:#F4FAEE;color:var(--x-gdark);align-items:center;justify-content:center;flex:none;transition:background-color .25s ease,color .25s ease}
.elx-sw button[aria-selected="true"] .elx-si{background:var(--x-gdeep);color:#FFFFFF}
.elx-si .elx-i{width:17px;height:17px}
.elx-st{display:grid;gap:1px}
.elx-st b{font-size:14px}
.elx-st small{display:block;font-size:12px;font-weight:600;color:var(--x-muted)}
.elx-line{margin:0;padding-top:12px;border-top:1px solid #EEF1EB}
.elx-side .elx-near{display:none;grid-template-columns:16px minmax(0,1fr);gap:4px 8px;align-items:start}
.ew-near .elx-side .elx-near{display:grid}
.elx-side .elx-near .elx-i{margin-top:2px}
.elx-side .elx-near .elx-chg{grid-column:2;justify-self:start}
.elx-side .elx-note{padding:12px}
.elx-tk{--cut:calc(100% - 92px);max-width:none}
.elx-tr{width:92px}
.elx .elx-main .ef-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 16px}
.elx .ef-sh{margin-top:0}
}
@media (min-width:960px) and (hover:hover){.elx-sw button:not([aria-selected="true"]):hover .elx-si{background:#E3F1D6}}
@media (prefers-reduced-motion:reduce){.elx *{transition:none!important}}
/* the location labels on cards already say this for shoppers who are not within 2 km */
html:not(.ew-near) .elx .ef-drop{display:none}

/* launching soon (owner, 2026-10-31): shown while a list has no products; the first product replaces it */
.elx-soon{display:flex;gap:16px;align-items:flex-start;padding:22px;border-radius:20px;background:#FFFFFF;border:1px solid var(--x-line)}
.elx-soon-ic{flex:none;width:52px;height:52px;border-radius:16px;background:#F4FAEE;color:var(--x-gdark);display:grid;place-items:center}
.elx-soon-ic .elx-i{width:26px;height:26px;stroke-width:1.75}
.elx-soon-t{display:grid;gap:8px;min-width:0}
.elx-soon-t em{font-style:normal;font-size:11px;font-weight:800;letter-spacing:.1em;color:#8A5208;background:#FFF6E5;justify-self:start;padding:4px 10px;border-radius:999px}
.elx-soon-t h2{margin:0;font-size:20px;line-height:1.25}
.elx-soon-t p{margin:0;font-size:14px;color:var(--x-muted);max-width:520px}
.elx-soon-k{font-size:11px;font-weight:800;letter-spacing:.07em;color:var(--x-muted);margin-top:4px;text-transform:uppercase}
.elx-soon-c{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.elx-soon-c li{padding:6px 12px;border-radius:999px;background:#EEF2EA;font-size:13px;font-weight:700}
.elx-soon-wa{justify-self:start;display:inline-flex;align-items:center;gap:8px;margin-top:6px;height:42px;padding:0 16px;border-radius:999px;border:1.5px solid var(--x-line2);color:var(--x-gdark);font-weight:800;font-size:14px;text-decoration:none;transition:transform .2s ease,border-color .2s ease}
.elx-soon-wa:hover{border-color:var(--x-gdark)}
.elx-soon-wa:active{transform:scale(.97)}
.elx-soon-wa .elx-i{width:17px;height:17px}
@media (max-width:600px){.elx-soon{flex-direction:column;gap:12px;padding:18px}.elx-soon-t h2{font-size:18px}.elx-soon-wa{justify-self:stretch;justify-content:center}}
@media (prefers-reduced-motion:reduce){.elx-soon-wa{transition:none}}
