/* ================= Modal / side panel (cart drawer, quick view, size guide...) ================= */
.egw-modal{--mpad:16px;position:fixed;z-index:1000;left:0;top:0;overflow:hidden;width:100%;height:100vh;height:100dvh;background:transparent;display:flex;justify-content:flex-end;pointer-events:none;visibility:hidden;transition:visibility .9s,pointer-events .9s}
@media(min-width:1200px){.egw-modal{--mpad:24px}}
.egw-modal.is-open{pointer-events:all;visibility:visible;transition:visibility 0s}
.egw-modal__overlay{position:fixed;z-index:1;left:0;top:0;width:100%;height:100%;background:rgba(var(--color-modal-overlay),.5);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);opacity:0;transition:opacity .9s ease;cursor:pointer}
.egw-modal.is-open .egw-modal__overlay{opacity:1}
.egw-modal__content{position:relative;z-index:2;background:rgb(var(--color-background));color:rgb(var(--color-foreground));transform:translate(110%);width:100%;max-width:100%;height:100%;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;outline:none;overflow:hidden;transition:transform .9s cubic-bezier(.22,1,.36,1)}
@media(min-width:576px){.egw-modal__content{max-width:440px}}
.egw-modal.is-open .egw-modal__content{transform:translate(0)}
.egw-modal__heading{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px var(--mpad);border-bottom:1px solid rgb(var(--color-border))}
.egw-modal__close{position:relative;color:rgb(var(--color-foreground));font-size:12px;cursor:pointer;background:none;border:0;padding:0;overflow:hidden;line-height:1.35}
.egw-modal__close .egw-hbtn__label{position:relative;display:block;transition:transform .35s ease-in-out}
.egw-modal__close .egw-hbtn__label::before{content:attr(data-label);display:block;position:absolute;top:100%;inset-inline-start:0;white-space:nowrap;color:rgb(var(--color-foreground-secondary))}
@media(hover:hover) and (pointer:fine){.egw-modal__close:hover .egw-hbtn__label{transform:translateY(-100%)}}
.egw-cartd{z-index:1001}
.egw-panel__body{padding:var(--mpad);overflow-y:auto;color:rgb(var(--color-foreground-secondary))}
.egw-rte p{margin:0 0 16px;color:inherit}.egw-rte strong{color:rgb(var(--color-foreground));font-weight:700}.egw-rte ul{list-style:disc;padding-left:20px;margin:0 0 16px}.egw-rte li{margin-bottom:4px;color:inherit}.egw-rte hr{border:0;border-top:1px solid rgb(var(--color-border));margin:24px 0}.egw-rte table{width:100%;border-collapse:collapse}.egw-rte td{border:1px solid rgb(var(--color-border));padding:8px 12px;font-size:12px;text-align:center}.egw-rte a{text-decoration:underline}

/* ================= Cart drawer ================= */
.egw-cartd__count{color:rgb(var(--color-foreground-secondary));vertical-align:super;font-size:9px}
.egw-cartd__ship{border-bottom:1px solid rgb(var(--color-border))}
.egw-cartd__shipin{padding:10px 16px}
.egw-cartd__msg{color:rgb(var(--color-foreground));margin:0}
.egw-cartd__bar{height:2px;background:rgba(var(--color-foreground),.3);margin-top:8px;overflow:hidden}
.egw-cartd__bar span{display:block;height:100%;width:0;background:rgb(var(--color-foreground));transition:width .6s cubic-bezier(.22,1,.36,1)}
.egw-cartd__empty{display:none;flex:1;flex-direction:column;justify-content:center;align-items:center;padding:0}
.egw-cartd.is-empty .egw-cartd__empty{display:flex}
.egw-cartd__emptyw{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}
.egw-cartd__emptyt{margin:0;color:rgb(var(--color-foreground-secondary));font-size:14px}
.egw-cartd__emptyd{margin:0;color:rgb(var(--color-foreground-secondary))}
.egw-cartd__items{flex:1;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;width:100%;padding:0 16px}
.egw-cartd.is-empty .egw-cartd__items,.egw-cartd.is-empty .egw-cartd__footer{display:none}
.egw-ci{position:relative;padding-block:24px;border-top:1px solid rgb(var(--color-border))}
.egw-ci:first-child{border-top:0}
.egw-ci__in{display:flex;gap:16px}
.egw-ci__media{position:relative;width:64px;min-width:64px;aspect-ratio:3/4;overflow:hidden;background:rgb(var(--color-background-secondary))}
@media(min-width:576px){.egw-ci__media{width:94px;min-width:94px}}
.egw-ci__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.egw-ci__link{position:absolute;inset:0;z-index:2}
.egw-ci__det{display:flex;justify-content:space-between;column-gap:16px;width:100%}
.egw-ci__info{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;height:100%;gap:16px}
.egw-ci__col{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.egw-ci__name{font-size:12px;line-height:1.285;color:rgb(var(--color-foreground))}
.egw-ci__var{font-size:12px;color:rgb(var(--color-foreground-secondary));margin:0}
.egw-ci__old{color:rgb(var(--color-card-price-old));text-decoration:line-through;font-size:12px}
.egw-ci .egw-qty{height:28px;width:82px}
.egw-ci .egw-qty__b{width:26px}
.egw-ci__right{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;max-width:90px;flex-shrink:0;gap:16px;text-align:end;font-size:12px}
.egw-ci__rm{display:flex;align-items:center;justify-content:center;width:24px;height:24px;color:rgb(var(--color-foreground));cursor:pointer;background:none;border:0;padding:0;transition:opacity .3s}
.egw-ci__rm:hover svg{transform:rotate(-90deg)}.egw-ci__rm svg{transition:transform .3s}
.egw-cartd__footer{display:flex;flex-direction:column;justify-content:space-between;border-top:1px solid rgb(var(--color-border));padding:24px 16px;gap:24px}
.egw-cartd__note textarea{width:100%;border:0;border-bottom:1px solid rgb(var(--color-border));background:transparent;font:inherit;font-size:12px;color:rgb(var(--color-foreground));padding:12px 0;resize:vertical;outline:0;border-radius:0;box-shadow:none}
.egw-cartd__totals{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}
.egw-cartd__tax{color:rgb(var(--color-foreground-secondary));margin-top:-12px;display:block}
.egw-cartd__btns{display:flex;flex-direction:column;gap:8px}
.egw-cartd__btns .egw-btn{width:100%}

/* ================= Quick view ================= */
.egw-qv__body{padding:var(--mpad);overflow-y:auto;flex:1}
.egw-qv__img{aspect-ratio:3/4;position:relative;background:rgb(var(--color-background-secondary));margin-bottom:16px}
.egw-qv__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.egw-buy__qtitle{margin:0 0 4px}
.egw-buy__price{margin-bottom:24px}

/* ================= Buy form (options, qty, add to cart) ================= */
.egw-buy{display:flex;flex-direction:column;gap:24px}
.egw-opt{border:0;margin:0;padding:0;min-width:0}
.egw-opt__name{display:flex;align-items:center;gap:2px;width:100%;padding:0;margin:0 0 12px;color:rgb(var(--color-foreground-secondary));font-size:12px}
.egw-opt__cur{color:rgb(var(--color-foreground))}
.egw-opt__guide{margin-inline-start:auto;font-size:12px;color:rgb(var(--color-foreground));background-image:linear-gradient(currentColor,currentColor);background-size:100% 1px;background-position:left 94%;background-repeat:no-repeat;cursor:pointer;border:0;padding:0;background-color:transparent}
.egw-opt__group{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.egw-opt--color .egw-opt__group{gap:8px}
.egw-ov input{clip:rect(0,0,0,0);overflow:hidden;position:absolute;height:1px;width:1px}
.egw-ov{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:12px;line-height:1.35}
.egw-ov:not(.egw-ov--sw){padding:8px 16px;min-width:48px;height:36px;background:rgb(var(--color-background-secondary));color:rgb(var(--color-foreground));border:0;transition:background-color var(--duration-default),color var(--duration-default)}
.egw-ov:not(.egw-ov--sw) .egw-ov__t{color:inherit}
.egw-ov:not(.egw-ov--sw):has(input:checked){background:rgb(var(--color-button));color:rgb(var(--color-button-text))}
@media(hover:hover) and (pointer:fine){.egw-ov:not(.egw-ov--sw):hover{background:rgb(var(--color-button));color:rgb(var(--color-button-text))}}
.egw-ov.is-off:not(.egw-ov--sw) .egw-ov__t{opacity:.5;text-decoration:line-through}
.egw-ov--sw{width:68px;max-width:68px;aspect-ratio:106/144;background:var(--swatch-img,none),var(--swatch-color);background-size:cover;background-position:center;padding:0;border:0}
.egw-ov--sw::after{content:"";position:absolute;width:100%;left:0;bottom:0;height:1px;background:transparent;transition:background-color var(--duration-default)}
.egw-ov--sw:has(input:checked)::after{background:rgb(var(--color-foreground))}
@media(hover:hover){.egw-ov--sw:hover::after{background:rgb(var(--color-foreground))}}
.egw-ov--sw.is-off{opacity:.4}
.egw-inv{display:flex;align-items:center;justify-content:space-between;margin:8px 0}
.egw-inv__status{color:rgb(var(--color-foreground-secondary));display:inline-flex;align-items:center;gap:2px}
.egw-inv__status.is-out{color:#ff3a3d}
.egw-inv__link{margin-inline-start:auto}
.egw-buy__err{color:rgb(var(--color-error))}
.egw-buy__row{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.egw-qty{display:flex;align-items:center;height:36px;border:1px solid rgb(var(--color-border));width:auto}
.egw-qty__b{height:100%;width:36px;display:flex;align-items:center;justify-content:center;color:rgb(var(--color-foreground));background:none;border:0;cursor:pointer;padding:0;font-size:14px}
.egw-qty__in{width:40px;height:100%;border:0;background:transparent;text-align:center;font:inherit;font-size:12px;color:rgb(var(--color-foreground));padding:0;-moz-appearance:textfield;appearance:textfield;outline:0;box-shadow:none;border-radius:0}
.egw-qty__in::-webkit-outer-spin-button,.egw-qty__in::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.egw-buy__add{flex:1 1 0;min-width:0;width:auto}
.egw-buy__add[disabled]{opacity:.5;cursor:not-allowed}
.egw-buy__add.is-loading .egw-btn__label{opacity:.4}

/* ================= Product page ================= */
.egw-prodmain{background:rgb(var(--color-background));color:rgb(var(--color-foreground))}
.egw-prod__outer{display:flex;flex-direction:column;flex-wrap:wrap;position:relative;align-items:start}
@media(min-width:750px){.egw-prod__outer{align-items:center}}
@media(min-width:990px){.egw-prod__outer{flex-direction:row;flex-wrap:nowrap;align-items:flex-start;justify-content:center;gap:0}}
.egw-pm{--screen-h:calc(100vh - var(--egw-ann-h,0px) - var(--egw-header-h,56px));overflow:hidden;width:100%;background:transparent;order:-1;flex-shrink:0}
@media(min-width:990px){.egw-pm{width:67.0833%;position:sticky;top:var(--egw-header-h,56px);height:fit-content}.egw-pm--after{order:2}}
.egw-pm__wrap{position:relative}
.egw-pm__listw{position:relative}
.egw-pm__list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth}
.egw-pm__list::-webkit-scrollbar{display:none}
.egw-pm__item{flex:0 0 100%;scroll-snap-align:start;min-width:0}
@media(min-width:990px){.egw-pm__item{flex:0 0 auto;max-width:calc(var(--screen-h) * .75);width:calc(var(--screen-h) * .75)}.egw-pm__item:only-child{max-width:100%;width:100%;flex:1 1 100%}}
.egw-pm__img{position:relative;aspect-ratio:3/4;overflow:hidden;background:rgb(var(--color-background-secondary))}
@media(min-width:990px){.egw-pm__img{aspect-ratio:auto;height:var(--screen-h)}}
.egw-pm__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.egw-w .egw-pm__img img{max-width:none;height:100%}
.egw-pm__nav{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);display:none;align-items:center;justify-content:center;gap:8px;z-index:3;user-select:none;background:rgb(var(--color-background-secondary));color:rgb(var(--color-foreground))}
@media(min-width:990px){.egw-pm__nav{display:flex}}
.egw-pm__navb{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:rgb(var(--color-background-secondary));color:rgb(var(--color-foreground));border:0;cursor:pointer;padding:0}
.egw-pm__navb .egw-i{width:32px;height:32px;rotate:180deg}.egw-pm__navb--next .egw-i{rotate:0deg}
.egw-pm__count{font-size:12px;min-width:36px;text-align:center}
.egw-pi{flex-grow:1;width:100%;padding:32px 16px 0}
@media(min-width:750px){.egw-pi{max-width:632px}}
@media(min-width:990px){.egw-pi{width:32.9167%;max-width:none;position:sticky;top:var(--egw-header-h,56px);height:fit-content}}
@media(min-width:1200px){.egw-pi{padding:40px 24px 0}}
.egw-pi__wrap{width:100%}
@media(min-width:990px){.egw-pi__wrap{max-width:450px;margin:0 auto}}
.egw-pi__title{margin:0}
.egw-pi__price{margin-top:4px;font-size:16px}
.egw-pi__price .egw-price{font-size:16px;line-height:1.35}
.egw-pi__price .egw-price--sale{align-items:center}
.egw-pi__desc{width:100%;color:rgb(var(--color-foreground-secondary));margin:32px 0}
.egw-pi__desc p{margin:0;color:inherit}
.egw-pcd{display:flex;align-items:center;gap:8px;margin:24px 0;flex-wrap:wrap}
.egw-pcd__icon svg{width:24px;height:24px}
.egw-pcd__label{margin:0;color:rgb(var(--color-foreground))}
.egw-pi__rows{margin-top:32px;border-top:1px solid rgb(var(--color-border))}
.egw-pi__row{display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px 0;border:0;border-bottom:1px solid rgb(var(--color-border));background:none;color:rgb(var(--color-foreground));cursor:pointer;font-size:12px;text-align:left}
.egw-pi__rowi{display:flex}
