/* Light cart (2026-11-01): the cart page's look, drawn by cart.js instead of WooCommerce's React cart block. */
.elc{--elc-line:var(--pns-line,#E3E7DF);display:block}
.elc[hidden],.elc [hidden]{display:none!important}
.elc-boot{display:flex;align-items:center;justify-content:center;gap:10px;min-height:160px;padding:24px;border-radius:22px;background:#FFFFFF;border:1px solid var(--elc-line);font-size:14px;color:var(--pns-muted,#5F6B5A)}
.elc-spin{width:18px;height:18px;border-radius:50%;border:2.5px solid #DCE8D2;border-top-color:var(--pns-green,#2E8B3A);animation:elc-spin .8s linear infinite}
@keyframes elc-spin{to{transform:rotate(360deg)}}
.elc-full{display:grid;gap:12px}
.elc-main{display:grid;gap:12px;min-width:0}
.gl-cartpage .elc .elc-del{width:auto;margin:0}
/* lines */
.elc-items{padding:4px 14px;border-radius:22px;background:#FFFFFF;border:1px solid var(--elc-line)}
.elc-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:4px 12px;align-items:start;padding:14px 0;border-top:1px solid #F0F2EE;transition:opacity .25s ease,transform .25s ease}
.elc-row:first-child{border-top:0}
.elc-row.out{opacity:0;transform:translateX(12px)}
.elc-im{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:12px;border:1px solid #ECEEEA;background:#FFFFFF;overflow:hidden}
.elc-im img{width:86%;height:86%;object-fit:contain}
.elc-info{display:flex;flex-direction:column;gap:3px;min-width:0}
.elc-tags{display:flex;flex-wrap:wrap;gap:4px}
.elc-tags:empty{display:none}
.elc-tags .gl-ftag{order:0;margin:0}
.elc .gl-ftag.f{background:#E7F5DF;color:#1F6B2E}
.elc .gl-ftag.l{background:#FFF1E5;color:#8A4B12}
.elc-n{font-size:13.5px;line-height:1.3;font-weight:700;color:var(--pns-ink,#1C2419);text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.elc-meta{font-size:11.5px;line-height:1.35;color:var(--pns-muted,#5F6B5A)}
.elc-meta:empty{display:none}
.elc-pr{font-size:12px;color:var(--pns-ink-2,#38422F)}
.elc-pr del{margin-left:4px;color:var(--pns-muted,#5F6B5A)}
.elc-act{display:flex;align-items:center;gap:8px;margin-top:6px}
.elc-step{display:inline-flex;align-items:center;height:34px;border-radius:9px;background:var(--pns-green,#2E8B3A);color:#FFFFFF}
.elc-step button{width:34px;height:34px;padding:0;border:0;background:transparent;color:#FFFFFF;font-size:18px;line-height:1;font-weight:700;cursor:pointer;transition:transform .15s cubic-bezier(.34,1.56,.64,1)}
.elc-step button:active{transform:scale(.8)}
.elc-step button:disabled{opacity:.45;cursor:default}
.elc-step button:focus-visible{outline:2px solid #FFFFFF;outline-offset:-4px;border-radius:8px}
.elc-step .q{min-width:22px;text-align:center;font-size:13.5px;font-weight:800}
.elc-step.ro{background:#EEF2EA;color:var(--pns-ink,#1C2419)}
.elc-step.ro button{display:none}
.elc-step.ro .q{padding:0 12px}
.elc-rm{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:0;border-radius:9px;background:transparent;color:var(--pns-faint,#8A9384);cursor:pointer;transition:background-color .2s ease,color .2s ease}
.elc-rm svg{width:18px;height:18px}
.elc-lt{display:flex;flex-direction:column;align-items:flex-end;gap:5px;text-align:right}
.elc-lt .v{font-size:14.5px;font-weight:800;color:var(--pns-ink,#1C2419);white-space:nowrap}
.elc-save{padding:2px 7px;border-radius:6px;background:#E7F5DF;color:var(--pns-green-dark,#1F6B2E);font-size:10.5px;font-weight:800;white-space:nowrap}
.elc.is-busy .elc-lt .v,.elc.is-busy .elc-tv{opacity:.55;transition:opacity .2s ease}
/* you may also like */
.elc-also{padding:14px 16px 12px;border-radius:22px;background:#FFFFFF;border:1px solid var(--elc-line);overflow:hidden}
.elc-also h2{margin:0 0 10px;font-size:17px;line-height:1.3;font-weight:800;letter-spacing:-.01em}
.elc-also .ef-grid{display:grid;grid-auto-flow:column;grid-auto-columns:148px;gap:10px;overflow-x:auto;scrollbar-width:thin;padding-bottom:4px}
/* totals */
.elc-sum{display:grid;gap:10px;padding:16px;border-radius:22px;background:#FFFFFF;border:1px solid var(--elc-line)}
.elc-sum h2{margin:0;font-size:15px;line-height:1.3;font-weight:800}
.elc-coup{display:grid;gap:8px;padding:8px 0 10px;border-top:1px solid #F0F2EE;border-bottom:1px solid #F0F2EE}
.elc-cbtn{display:flex;align-items:center;gap:8px;width:100%;min-height:40px;padding:0;border:0;background:transparent;font-size:13.5px;font-weight:700;color:var(--pns-green-dark,#1F6B2E);cursor:pointer;text-align:left}
.elc-cbtn svg{width:18px;height:18px;flex:0 0 auto}
.elc-cbtn span{flex:1}
.elc-cbtn .dn{transition:transform .25s ease}
.elc-cbtn[aria-expanded="true"] .dn{transform:rotate(180deg)}
.elc-cbody{animation:elc-in .3s cubic-bezier(.65,0,.35,1)}
@keyframes elc-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.elc-cform{display:flex;gap:8px}
.elc-fld{position:relative;flex:1;min-width:0;display:block}
.elc-fld input{width:100%;height:48px;padding:20px 14px 6px;border:1.5px solid var(--pns-line-strong,#C9D1C3);border-radius:12px;background:#FFFFFF;font:inherit;font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--pns-ink,#1C2419);outline:none;box-shadow:none;transition:border-color .2s ease}
.elc-fld input:focus{border-color:var(--pns-green,#2E8B3A);outline:none;box-shadow:none}
.elc-fld span{position:absolute;left:15px;top:50%;transform:translateY(-50%);font-size:14px;font-weight:600;color:var(--pns-faint,#8A9384);pointer-events:none;transition:top .2s ease,font-size .2s ease,transform .2s ease}
.elc-fld input:focus+span,.elc-fld input:not(:placeholder-shown)+span{top:13px;transform:none;font-size:11px;font-weight:700;color:var(--pns-muted,#5F6B5A)}
.elc-cform button{flex:0 0 auto;height:48px;padding:0 18px;border:0;border-radius:12px;background:var(--pns-ink,#1C2419);color:#FFFFFF;font-size:14px;font-weight:800;cursor:pointer}
.elc-cform button:disabled{opacity:.4}
.elc-chips{display:flex;flex-wrap:wrap;gap:6px}
.elc-chips:empty{display:none}
.elc-chip{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 4px 0 10px;border-radius:999px;background:#E7F5DF;color:var(--pns-green-dark,#1F6B2E);font-size:12px}
.elc-chip svg{width:14px;height:14px}
.elc-chip button{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}
.elc-lines{display:grid;gap:6px;font-size:13.5px;color:var(--pns-ink-2,#38422F)}
.elc-lines:empty{display:none}
.elc-lines>div{display:flex;justify-content:space-between;gap:12px}
.elc-lines .g{color:var(--pns-green-dark,#1F6B2E);font-weight:700}
.elc-tot{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-top:12px;border-top:1.5px dashed var(--pns-line-strong,#C9D1C3)}
.elc-tl{display:flex;flex-direction:column;gap:3px;font-size:18px;line-height:1.2;font-weight:800;color:var(--pns-ink,#1C2419)}
.elc-tl small{font-size:12.5px;line-height:1.3;font-weight:600;color:var(--pns-muted,#5F6B5A)}
.elc-tv{font-size:18px;line-height:1.2;font-weight:800;color:var(--pns-ink,#1C2419)}
.elc-go{display:flex;align-items:center;justify-content:center;min-height:52px;border-radius:14px;background:var(--pns-green,#2E8B3A);color:#FFFFFF;font-size:16px;font-weight:800;text-decoration:none;transition:transform .15s ease,background-color .2s ease}
.elc-go:active{transform:scale(.98)}
.elc-go:focus-visible,.elc-bar a:focus-visible{outline:2px solid var(--pns-green-dark,#1F6B2E);outline-offset:3px}
.elc-safe{display:flex;align-items:center;gap:6px;margin:0;font-size:11.5px;color:var(--pns-muted,#5F6B5A)}
.elc-safe svg{width:14px;height:14px;flex:0 0 auto}
/* notes */
.elc-notes{display:grid;gap:8px}
.elc-notes:empty{display:none}
.elc-notes{margin-bottom:12px}
.elc-note{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:14px;background:#EAF3FB;color:#1F3B52;font-size:13px;line-height:1.45;transition:opacity .3s ease,transform .3s ease}
.elc-note svg{width:18px;height:18px;flex:0 0 auto;margin-top:1px}
.elc-note.warn{background:#FFF6E5;color:#6B4A12}
.elc-note.ok{background:#E7F5DF;color:#1F6B2E}
.elc-note.out{opacity:0;transform:translateY(-4px)}
/* phone: totals bar fixed at the bottom */
.elc-bar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#FFFFFF;border-top:1px solid var(--elc-line)}
.elc-bar span{display:flex;flex-direction:column;line-height:1.2}
.elc-bar small{font-size:11.5px;font-weight:600;color:var(--pns-muted,#5F6B5A)}
.elc-bar b{font-size:18px;font-weight:800;color:var(--pns-ink,#1C2419)}
.elc-bar a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;border-radius:14px;background:var(--pns-green,#2E8B3A);color:#FFFFFF;font-size:15px;font-weight:800;text-decoration:none}
.gl-cartpage:has(.elc-bar:not([hidden])){padding-bottom:96px}
@media (hover:hover){
.elc-rm:hover{background:#FDF1EE;color:#B3361F}
.elc-go:hover,.elc-bar a:hover{background:var(--pns-green-dark,#1F6B2E)}
.elc-n:hover{color:var(--pns-green-dark,#1F6B2E)}
}
@media (min-width:783px){
.elc-full{grid-template-columns:minmax(0,65%) minmax(0,35%);gap:16px;align-items:start}
.elc-full .elc-main{grid-row:1}
.elc-side{position:sticky;top:20px}
.elc-bar{display:none}
.gl-cartpage:has(.elc-bar){padding-bottom:28px}
.elc-row{grid-template-columns:72px minmax(0,1fr) auto}
.elc-im{width:72px;height:72px}
}
@media (prefers-reduced-motion:reduce){.elc *{transition:none!important;animation:none!important}}
