/* Elathi Commerce: save-for-later heart, saved list in the cart, delivery rating. */
.em-heart{position:absolute;z-index:6;top:8px;right:8px;width:36px;height:36px;padding:0;border:1px solid #E3E8DE;border-radius:50%;background:#FFFFFF;color:#6B7166;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .3s cubic-bezier(.34,1.56,.64,1),color .2s ease}
.em-heart:active{transform:scale(.86)}
.em-heart svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:fill .2s ease}
.em-heart[aria-pressed="true"]{color:#D2402A}
.em-heart[aria-pressed="true"] svg{fill:#D2402A}
.em-heart.pop svg{animation:em-pop .45s cubic-bezier(.34,1.56,.64,1)}
@keyframes em-pop{0%{transform:scale(.4)}100%{transform:scale(1)}}
.em-heart .em-burst{position:absolute;inset:0;pointer-events:none}
.em-heart .em-burst i{position:absolute;left:50%;top:50%;width:5px;height:5px;margin:-2.5px;border-radius:50%;opacity:0}
.em-heart.pop .em-burst i{animation:em-burst .55s cubic-bezier(.65,0,.35,1) forwards}
@keyframes em-burst{0%{opacity:1;transform:rotate(var(--a)) translateY(0) scale(1)}100%{opacity:0;transform:rotate(var(--a)) translateY(-26px) scale(.4)}}
.em-heart:focus-visible{outline:none;box-shadow:0 0 0 3px #FFFFFF,0 0 0 5px #1F6B2E}
.em-heart.is-big{top:14px;right:14px;width:44px;height:44px}
.em-heart.is-big svg{width:22px;height:22px}

.em-saved{margin:12px 0 0;padding:14px 16px;border-radius:22px;background:#FFFFFF;border:1px solid #E3E8DE}
.em-saved h2{margin:0 0 10px;font-size:17px;line-height:1.3;font-weight:800;color:#14210F}
.em-saved-list{display:grid;grid-auto-flow:column;grid-auto-columns:150px;gap:12px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.em-saved-list::-webkit-scrollbar{display:none}
.em-sv{position:relative;display:flex;flex-direction:column;gap:6px}
.em-sv .em-im{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1;border-radius:14px;border:1px solid #ECEEEA;background:#FFFFFF}
.em-sv .em-im img{width:78%;height:78%;object-fit:contain}
.em-sv .em-heart{top:6px;right:6px;width:30px;height:30px}
.em-sv .em-heart svg{width:15px;height:15px}
.em-sv a.em-n{font-size:12.5px;line-height:1.3;font-weight:700;color:#14210F;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.em-sv .em-ft{display:flex;align-items:center;justify-content:space-between;gap:6px}
.em-sv .em-ft b{font-size:14px;color:#14210F}
.em-sv .em-add{min-height:32px;padding:0 12px;border-radius:9px;border:1.5px solid #318616;background:#F7FFF5;color:#318616;font:inherit;font-size:12.5px;font-weight:800;cursor:pointer;transition:transform .18s cubic-bezier(.34,1.56,.64,1)}
.em-sv .em-add:active{transform:scale(.92)}
.em-sv .em-add[disabled]{opacity:.5}
.em-sv.out{animation:em-out .3s ease forwards}
@keyframes em-out{to{opacity:0;transform:scale(.9)}}

.gl-rate{margin-top:20px;padding-top:18px;border-top:1px dashed #CFD8C8;text-align:center}
.gl-rate-q{margin:0 0 12px;font-size:14.5px;font-weight:800;color:#14210F}
.gl-faces{position:relative;display:grid;grid-template-columns:repeat(4,66px);gap:10px;width:max-content;margin:0 auto}
.gl-fring{position:absolute;top:0;left:0;width:66px;height:66px;border-radius:16px;background:#1F6B2E;transform:translateX(calc(var(--fi,0) * 76px));opacity:0;transition:transform .38s cubic-bezier(.65,0,.35,1),opacity .2s ease;pointer-events:none}
.gl-faces.has .gl-fring{opacity:1}
.gl-face{position:relative;z-index:1;width:66px;height:66px;padding:0;border-radius:16px;border:1.5px solid #CFD8C8;background:transparent;color:#6B7166;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;font:inherit;font-size:11.5px;font-weight:700;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .3s ease,border-color .3s ease,opacity .3s ease}
.gl-face svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .38s cubic-bezier(.65,0,.35,1)}
.gl-faces.has .gl-face:not([aria-checked="true"]){color:#5A6156;border-color:#E1E6DC}
.gl-face[aria-checked="true"]{color:#FFFFFF;border-color:transparent;opacity:1!important}
.gl-face[aria-checked="true"] svg{transform:scale(1.15)}
.gl-face:focus-visible{outline:none;box-shadow:0 0 0 3px #FFFFFF,0 0 0 5px #1F6B2E}
.gl-rate-l{min-height:1.4em;margin:12px 0 0;font-size:13px;font-weight:800;color:#1F6B2E}
.gl-rate-l.in{animation:em-lin .3s cubic-bezier(.65,0,.35,1)}
@keyframes em-lin{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.gl-rate-l a{color:#1F6B2E}
@media (hover:hover){.em-heart:hover{color:#D2402A}.gl-face:not([aria-checked="true"]):hover{border-color:#1F6B2E}}
@media (prefers-reduced-motion:reduce){.em-heart,.em-heart *,.gl-fring,.gl-face,.gl-face svg{transition:none!important;animation:none!important}}

/* labels under the faces, low ratings fill rose (ratings and Google reviews, 2026-11-03) */
.gl-face span{color:inherit}
.gl-faces:has(.gl-face.low[aria-checked="true"]) .gl-fring{background:#B4402F}
.gl-rate-f{text-align:left;max-width:340px;margin:0 auto}
.gl-rate-f:empty{display:none}
.gl-fy,.gl-sorry{margin-top:16px;padding:12px 14px;border-radius:12px;background:#F2F7EE}
.gl-sorry{background:#FDECEA}
.gl-fy p,.gl-sorry p{margin:0;font-size:13.5px;line-height:1.45;color:#2E3A2B}
.gl-sorry p{color:#5C1A12}
.gl-fy b,.gl-sorry b{display:block;font-size:14.5px;color:#14210F}
.gl-sorry b{color:#5C1A12}
.gl-stars{display:flex;justify-content:center;gap:4px;margin-top:12px}
.gl-stars svg{width:22px;height:22px;fill:#F6C343;stroke:#E8A317;stroke-width:1.4;stroke-linejoin:round}
.gl-gbtn,.gl-wrong{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:12px;padding:12px 14px;border-radius:999px;border:1.5px solid #3C4043;background:#FFFFFF;color:#1F1F1F;font-size:14px;font-weight:800;text-decoration:none!important}
.gl-gbtn.soft{border-color:#CFD8C8;font-size:13px;font-weight:700;padding:10px 14px}
.gl-wrong{border-color:#1F6B2E;background:#1F6B2E;color:#FFFFFF}
.gl-g{width:20px;height:20px;flex:none}
.gl-later{display:block;margin:8px auto 0;padding:6px 10px;border:0;background:none;font:inherit;font-size:12.5px;font-weight:700;color:#5A6156;text-decoration:underline;cursor:pointer}
.gl-done{margin:14px 0 0;text-align:center;font-size:13px;font-weight:800;color:#1F6B2E}
@media (hover:hover){.gl-gbtn:hover{background:#F6F8F4}.gl-wrong:hover{background:#18561F}}
.gl-gbtn:focus-visible,.gl-wrong:focus-visible,.gl-later:focus-visible{outline:2px solid #1F6B2E;outline-offset:2px}
