/* ==========================================================================
   Stylówki („Kup stylówę") — strona zestawu, lista, karta, sekcja na produkcie, home
   ========================================================================== */

/* --- Strona zestawu --- */
.ez-look{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start;margin:8px 0 40px}
.ez-look__media{position:relative;border-radius:var(--ez-radius);overflow:hidden;background:var(--ez-gray-bg)}
.ez-look-hotspot{position:absolute;z-index:5;left:var(--ez-hotspot-x);top:var(--ez-hotspot-y);width:30px;height:30px;margin:-15px 0 0 -15px;padding:0;border:0;border-radius:50%;background:#fff;color:var(--ez-black);cursor:pointer;box-shadow:0 2px 10px #0006,0 0 0 1px #0001;overflow:visible!important;transition:transform .2s,box-shadow .2s}.ez-look-hotspot:hover,.ez-look-hotspot.is-open,.ez-look-hotspot:focus-within{z-index:30;box-shadow:0 4px 14px #0007,0 0 0 1px #0001}.ez-look-hotspot::before{content:"";position:absolute;inset:-7px;border-radius:50%;border:2px solid #fffc;pointer-events:none;animation:ezHotspotPulse 2.4s ease-out infinite}.ez-look-hotspot.is-open::before,.ez-look-hotspot:hover::before{animation:none;opacity:0}
.ez-look-hotspot__dot{position:absolute;inset:0;display:block;font-size:0;color:inherit}.ez-look-hotspot__dot::before,.ez-look-hotspot__dot::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;border-radius:1px;background:currentColor;transform:translate(-50%,-50%);transition:transform .2s}.ez-look-hotspot__dot::after{transform:translate(-50%,-50%) rotate(90deg)}.ez-look-hotspot.is-open .ez-look-hotspot__dot::before{transform:translate(-50%,-50%) rotate(45deg)}.ez-look-hotspot.is-open .ez-look-hotspot__dot::after{transform:translate(-50%,-50%) rotate(-45deg)}@keyframes ezHotspotPulse{0%{transform:scale(.75);opacity:1}100%{transform:scale(1.4);opacity:0}}@media (prefers-reduced-motion:reduce){.ez-look-hotspot::before{animation:none}}.ez-look-hotspot__card{position:absolute;left:22px;bottom:20px;display:flex!important;width:340px;max-width:calc(100vw - 32px);padding:12px;gap:14px;align-items:center;text-align:left;color:var(--ez-black);background:#fff;border:1px solid var(--ez-border);border-radius:12px;box-shadow:0 12px 36px #0004;opacity:0;visibility:hidden;transform:translateY(5px);transition:opacity .15s,transform .15s,visibility .15s;pointer-events:none;z-index:20}.ez-look-hotspot:focus-visible .ez-look-hotspot__card,.ez-look-hotspot.is-open .ez-look-hotspot__card{opacity:1;visibility:visible;transform:none;pointer-events:auto}@media (hover:hover) and (pointer:fine){.ez-look-hotspot:hover .ez-look-hotspot__card{opacity:1;visibility:visible;transform:none;pointer-events:auto}}.ez-look-hotspot__image{width:84px!important;height:112px!important;flex:none;background:var(--ez-gray-bg);border-radius:8px;overflow:hidden}.ez-look-hotspot__image img{width:100%!important;height:100%!important;object-fit:contain}.ez-look-hotspot__body{display:flex;min-width:0;flex-direction:column;gap:5px;font-size:14px;line-height:1.3}.ez-look-hotspot__body strong{font-size:14px;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ez-look-hotspot__body>span{font-size:16px;font-weight:700}.ez-look-hotspot__body>a{font-size:13px;color:inherit;text-decoration:underline;text-underline-offset:3px;margin-top:2px}@media (max-width: 767px){.ez-look-hotspot__card{width:300px;padding:10px;gap:12px}.ez-look-hotspot__image{width:72px!important;height:96px!important}}
.ez-look-hotspot.is-open > .ez-look-hotspot__card{opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important}
.ez-look-banner-hotspot{left:var(--ez-banner-dx);top:var(--ez-banner-dy)}
@media (max-width: 767px){.ez-look-banner-hotspot{left:var(--ez-banner-mx);top:var(--ez-banner-my)}}
.ez-look__hero{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.ez-look__hero--empty{background:linear-gradient(135deg,var(--ez-gray-bg),var(--ez-gray-bg-2))}
.ez-look__badge{display:inline-block;background:var(--ez-sale);color:var(--ez-white);font-weight:700;font-size:13px;line-height:1;padding:6px 9px;border-radius:var(--ez-radius);white-space:nowrap;vertical-align:middle}
.ez-look__badge--hero{position:absolute;top:12px;left:12px;font-size:15px;padding:8px 11px}
.ez-look__summary{position:sticky;top:calc(var(--ez-header-h) + 16px)}
.ez-look__kicker{display:block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ez-gray-text);margin:0 0 6px}
.ez-look__title{font-size:28px;line-height:1.2;margin:0 0 12px}
.ez-look__desc{color:#333;font-size:15px;line-height:1.55;margin:0 0 18px}
.ez-look__desc p{margin:0 0 10px}

/* --- Formularz zestawu (wspólny) --- */
.ez-look-form{display:block}
.ez-look__items{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:12px}
.ez-look__item{display:grid;grid-template-columns:84px minmax(0,1fr);gap:14px;padding:12px;border:1px solid var(--ez-border);border-radius:var(--ez-radius);background:var(--ez-white)}
.ez-look__item.is-current{border-color:var(--ez-black)}
.ez-look__thumb{display:block;aspect-ratio:3/4;background:var(--ez-white);border-radius:var(--ez-radius);overflow:hidden}
.ez-look__thumb img{width:100%;height:100%;object-fit:contain;display:block}
.ez-look__info{display:flex;flex-direction:column;gap:4px;min-width:0}
.ez-look__brand{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ez-gray-text)}
.ez-look__name{font-size:14px;font-weight:600;color:var(--ez-black);text-decoration:none;line-height:1.3}
.ez-look__name:hover{text-decoration:underline}
.ez-look__current{font-weight:400;color:var(--ez-gray-text)}
.ez-look__price{font-size:14px;color:#333}
.ez-look__na{color:var(--ez-sale);font-weight:600}
.ez-look__label{font-size:12px;font-weight:600;margin-top:4px}
.ez-look__select{width:100%;max-width:280px;min-height:44px;padding:8px 36px 8px 12px;font:inherit;font-size:14px;border:1px solid var(--ez-black);border-radius:var(--ez-radius);background:var(--ez-white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a1a1a' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 10px center/18px;appearance:none;-webkit-appearance:none;color:var(--ez-black)}
.ez-look__select:focus-visible{outline:2px solid var(--ez-black);outline-offset:2px}
.ez-look__select:invalid{border-color:var(--ez-border)}
.ez-look__select.is-error{border-color:var(--ez-sale);border-width:2px;background-color:#fff5f5;color:var(--ez-sale);animation:ezLookShake .32s ease}
@keyframes ezLookShake{0%,100%{transform:translateX(0)}20%{transform:translateX(-5px)}40%{transform:translateX(5px)}60%{transform:translateX(-3px)}80%{transform:translateX(3px)}}
@media (prefers-reduced-motion:reduce){.ez-look__select.is-error{animation:none}}
.ez-look__select:disabled{opacity:.6;cursor:not-allowed}
.ez-look__fixed{font-size:13px;color:#333}
.ez-look__sizerow{display:flex;align-items:stretch;gap:8px;max-width:380px}
.ez-look__sizerow .ez-look__select{flex:1 1 auto;max-width:none}
.ez-look__st-btn{flex:0 0 92px;width:92px;min-width:92px;min-height:44px}
.ez-look-st{z-index:2100}
.ez-look-st .ez-modal__box--sizetable{padding:32px 24px 24px}
.ez-look__totals{border-top:1px solid var(--ez-border);padding:14px 0 12px;margin:0 0 12px}
.ez-look__row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.ez-look__totlabel{font-size:14px;color:#333}
.ez-look__amounts{display:flex;align-items:baseline;gap:10px}
.ez-look__amounts del{color:var(--ez-gray-text);font-size:15px}
.ez-look__amounts strong{font-size:24px;line-height:1.1}
.ez-look__amounts.is-sale strong{color:var(--ez-sale)}
.ez-look__saving{margin:6px 0 0;font-size:14px;color:var(--ez-sale);font-weight:600}
.ez-look__points{display:flex;align-items:center;gap:8px;margin:10px 0 0;font-size:13px;color:#333}
.ez-look__tie{width:22px;height:22px;flex:none}
.ez-look__submit.loading{opacity:.7;pointer-events:none}
.ez-look__hint{margin:8px 0 0;font-size:13px;color:var(--ez-gray-text);text-align:center}
.ez-look__hint.is-ready{color:var(--ez-success)}
.ez-look__hint.is-error{color:var(--ez-sale);font-weight:600}
.ez-look__unavailable{margin:8px 0 0;padding:12px;border-radius:var(--ez-radius);background:var(--ez-gray-bg);font-size:14px;color:#333}
.ez-look-form.is-added .ez-look__submit{background:var(--ez-success);border-color:var(--ez-success)}

/* --- Sticky pasek (mobile, strona zestawu) --- */
.ez-look__sticky{display:none;position:fixed;left:0;right:0;bottom:0;z-index:850;background:var(--ez-white);border-top:1px solid var(--ez-border);padding:10px 16px calc(10px + env(safe-area-inset-bottom));align-items:center;gap:12px}
.ez-look__sticky[hidden]{display:none}
.ez-look__sticky-info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}
.ez-look__sticky-name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ez-look__sticky-price{font-size:15px;font-weight:700}
.ez-look__sticky .ez-btn{white-space:nowrap;min-height:44px}

/* --- Bannery kampanii na stronie głównej: karuzela (Marketing → Banner home) --- */
.ez-home-campaign{position:relative;width:100%;margin:0;background:#191919}
.ez-home-campaign__track{position:relative;width:100%;aspect-ratio:var(--ez-banner-ratio-d,8/3);overflow:hidden;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.ez-home-campaign__slide{position:absolute;inset:0;transition:opacity .6s ease,visibility .6s}
.ez-home-campaign__slide:not(.is-active){opacity:0;visibility:hidden;pointer-events:none}
.ez-home-campaign__link,.ez-home-campaign picture{display:block;height:100%}
.ez-home-campaign img{display:block;width:100%;height:100%;object-fit:cover}
.ez-home-campaign__link:focus-visible{outline:3px solid #ffb651;outline-offset:-3px}
.ez-home-campaign__hotspots{position:absolute;inset:0;pointer-events:none}.ez-home-campaign__hotspots .ez-look-banner-hotspot{pointer-events:auto}.ez-look-banner-hotspot .ez-look-hotspot__card a{pointer-events:auto}
.ez-home-campaign__nav{position:absolute;left:0;right:0;bottom:14px;z-index:6;display:flex;justify-content:center;align-items:center;gap:10px;pointer-events:none}
.ez-home-campaign__nav>*{pointer-events:auto}
.ez-home-campaign__dots{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:#0005}
.ez-home-campaign__dot{width:10px;height:10px;border-radius:50%;border:0;padding:0;background:#fff8;cursor:pointer;transition:transform .2s,background .2s}
.ez-home-campaign__dot[aria-selected=true]{background:#fff;transform:scale(1.3)}
.ez-home-campaign__dot:focus-visible,.ez-home-campaign__arrow:focus-visible,.ez-home-campaign__pause:focus-visible{outline:2px solid #ffb651;outline-offset:2px}
.ez-home-campaign__arrow,.ez-home-campaign__pause{width:36px;height:36px;border-radius:50%;border:0;background:#0006;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background .2s}
.ez-home-campaign__arrow{font-size:26px;line-height:1;padding-bottom:4px}
.ez-home-campaign__arrow:hover,.ez-home-campaign__pause:hover{background:#000a}
.ez-home-campaign__pause span{display:block;width:10px;height:12px;border-left:3px solid #fff;border-right:3px solid #fff;box-sizing:border-box}
.ez-home-campaign.is-paused .ez-home-campaign__pause span{width:0;height:0;border:0;border-left:11px solid #fff;border-top:6px solid transparent;border-bottom:6px solid transparent;margin-left:3px}
@media (max-width: 767px){.ez-home-campaign__track{aspect-ratio:var(--ez-banner-ratio-m,3/4)}.ez-home-campaign__nav{left:auto;right:10px;top:10px;bottom:auto;gap:6px}.ez-home-campaign__arrow{display:none}.ez-home-campaign__pause{width:30px;height:30px}}
@media (prefers-reduced-motion: reduce){.ez-home-campaign__slide{transition:none}}

/* --- Karta zestawu (lista, slider) --- */
.ez-look-card__media{background:var(--ez-gray-bg)}
.ez-look-card__badge{position:absolute;top:8px;left:8px;z-index:2;background:var(--ez-sale);color:var(--ez-white);font-weight:700;font-size:12px;line-height:1;padding:5px 7px;border-radius:var(--ez-radius)}
.ez-look-card__noimg{position:absolute;inset:0;background:linear-gradient(135deg,var(--ez-gray-bg),var(--ez-gray-bg-2))}
.ez-look-card__saving{display:block;font-size:12px;color:var(--ez-sale);font-weight:600;margin-top:2px}
.ez-looks-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 16px;list-style:none;margin:16px 0 32px;padding:0}
.ez-looks-archive__lead{max-width:none;width:100%;color:#333;font-size:15px;line-height:1.55;margin:8px 0 0}
.ez-looks-archive__empty{padding:32px 0;color:#333}

/* --- Home --- */
.ez-looks-home__lead{margin:-6px 0 14px;color:var(--ez-gray-text);font-size:14px}
/* Reset list Woo działa tylko wewnątrz .woocommerce — nasza sekcja jest poza nim, stąd własny. */
.ez-looks-slider{list-style:none;margin:0;padding:0}
.ez-look-card{list-style:none}

/* --- Strona produktu: karta zestawu pod „Dodaj do koszyka" (wzór RevolutionRace) --- */
.ez-look-section{margin:18px 0 6px}
.ez-look-promo{display:flex;gap:16px;align-items:stretch;padding:16px;border:1px solid var(--ez-border);border-radius:var(--ez-radius);background:var(--ez-gray-bg);margin:0 0 14px}
.ez-look-promo__hero{flex:none;display:block;align-self:stretch;width:170px;min-height:210px;border-radius:var(--ez-radius);overflow:hidden;background:var(--ez-gray-bg)}
.ez-look-promo__hero img{width:100%;height:100%;object-fit:cover;display:block}
.ez-look-promo__thumbs{display:flex;align-items:center;gap:6px;flex:none}
.ez-look-promo__thumbs--small{margin:0 0 10px;flex-wrap:wrap}
.ez-look-promo__thumbs--small .ez-look-promo__thumb{width:44px}
.ez-look-promo__thumbs--small .ez-look-promo__plus{font-size:14px}
.ez-look-promo__thumb{display:block;width:64px;aspect-ratio:3/4;border-radius:var(--ez-radius);overflow:hidden;background:var(--ez-white);border:1px solid transparent;transition:border-color .15s}
a.ez-look-promo__thumb:hover{border-color:var(--ez-black)}
a.ez-look-promo__thumb:focus-visible{outline:2px solid var(--ez-black);outline-offset:2px}
.ez-look-promo__thumb.is-current{border-color:var(--ez-black)}
.ez-look-promo__thumb img{width:100%;height:100%;object-fit:contain;display:block}
.ez-look-promo__plus{font-weight:700;font-size:18px;color:var(--ez-black);line-height:1}
.ez-look-promo__body{flex:1 1 auto;min-width:0}
.ez-look-promo__title{margin:0 0 4px;font-size:15px;line-height:1.3}
.ez-look-promo__save{display:block;color:var(--ez-sale);font-weight:700}
.ez-look-promo__text{margin:0 0 10px;font-size:13px;color:#333;line-height:1.45}
.ez-look-promo__text a{color:inherit;text-underline-offset:3px}
.ez-look-promo__btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;padding:9px 16px;line-height:1.25;text-align:center}
.ez-look-promo__btn .ez-look__cta{font-size:15px}

/* --- Modal „Skompletuj zestaw" --- */
.ez-modal__box--look{max-width:860px;padding:32px 32px 28px}
.ez-look-modal__title{margin:0 0 18px;font-size:20px;line-height:1.25;padding-right:36px}
.ez-look-form--modal .ez-look__items{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:0 0 18px}
.ez-look-form--modal .ez-look__item{grid-template-columns:1fr;gap:10px;padding:0;border:0;background:transparent}
.ez-look-form--modal .ez-look__thumb{max-width:none;background:var(--ez-gray-bg)}
.ez-look-form--modal .ez-look__thumb img{object-fit:cover}
.ez-look-form--modal .ez-look__name{font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ez-look-form--modal .ez-look__select{max-width:none}
.ez-look__pricerow{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin:0 0 12px;padding:12px 0 0;border-top:1px solid var(--ez-border)}
.ez-look__benefit{margin:0 0 14px;padding:13px 16px;border:1px solid #eddfc9;border-radius:10px;background:linear-gradient(135deg,#fffaf2 0%,#fff 65%)}
.ez-look__benefit-label{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#9c650e;margin:0 0 8px}
.ez-look__benefit-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ez-look__benefit-item{display:flex;flex-direction:column;line-height:1.2;min-width:0}
.ez-look__benefit-item strong{font-size:18px;white-space:nowrap}
.ez-look__benefit-item small{font-size:11px;color:var(--ez-gray-text)}
.ez-look__benefit-item--sale strong{color:var(--ez-sale)}
.ez-look__benefit-item--club strong{color:#9c650e}
.ez-look__benefit-item--total strong{font-size:26px;color:var(--ez-black)}
.ez-look__benefit-item--total small{color:#333;font-weight:600}
.ez-look__benefit-op{font-size:17px;font-weight:700;color:var(--ez-gray-text)}
.ez-look__benefit-op--eq{margin-left:auto}
.ez-look__benefit-item--total{text-align:right}
.ez-look__submit{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:60px;padding:10px 16px;line-height:1.25;text-align:center}
.ez-look__cta{font-size:16px;font-weight:700}
.ez-look__cta-sub{font-size:13px;font-weight:400;opacity:.85}
.ez-look__cta-sub [data-role=points-value],.ez-look__cta [data-role=saving-amount]{font-weight:700;white-space:nowrap}
.ez-look-form--modal .ez-look__hint{margin-top:6px}

/* --- „Skompletuj z:" --- */
.ez-complete{margin:16px 0 4px}
.ez-complete__title{margin:0 0 10px;font-size:14px;font-weight:700}
.ez-complete__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ez-complete__item{display:grid;grid-template-columns:48px minmax(0,1fr) 40px;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--ez-border);border-radius:var(--ez-radius);background:var(--ez-white)}
.ez-complete__thumb{aspect-ratio:3/4;border-radius:var(--ez-radius);overflow:hidden;background:var(--ez-gray-bg)}
.ez-complete__thumb img{width:100%;height:100%;object-fit:contain;display:block}
.ez-complete__info{display:flex;flex-direction:column;gap:2px;min-width:0}
.ez-complete__name{font-size:13px;font-weight:600;color:var(--ez-black);text-decoration:none;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ez-complete__price{font-size:13px;color:#333}
.ez-complete__select{min-height:38px;font-size:13px;margin-top:6px}
.ez-complete__select[hidden]{display:none}
.ez-complete__add{width:40px;height:40px;border:1px solid var(--ez-black);border-radius:50%;background:var(--ez-white);color:var(--ez-black);font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.ez-complete__add:hover,.ez-complete__add.is-open{background:var(--ez-black);color:var(--ez-white)}
.ez-complete__add.loading{opacity:.6;pointer-events:none}
.ez-complete__add.is-done{background:var(--ez-success);border-color:var(--ez-success);color:var(--ez-white)}

/* --- Koszyk / drawer: tag zestawu --- */
.ez-look-tag{display:inline-block;background:var(--ez-black);color:var(--ez-white);border-radius:var(--ez-radius);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 6px;margin-left:6px;vertical-align:middle;white-space:nowrap}
.ez-look-tag--off{background:var(--ez-gray-text)}
.ez-look-qty{display:inline-block;min-width:32px;text-align:center;font-weight:600}

/* --- Responsywność --- */
@media (max-width: 1024px){
	.ez-looks-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
	.ez-look__summary{position:static}
}
@media (max-width: 820px){
	.ez-look{grid-template-columns:1fr;gap:20px}
	.ez-look__title{font-size:24px}
	.ez-look__sticky{display:flex}
	body.single-ez_look .ez-bottomnav{display:none}
	body.single-ez_look{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
	.ez-looks-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}
}
@media (max-width: 600px){
	.ez-look__item{grid-template-columns:72px minmax(0,1fr);gap:10px;padding:10px}
	.ez-look__select{max-width:none}
	.ez-complete__list{grid-template-columns:1fr}
	.ez-look-promo{gap:12px;padding:12px}
	.ez-look-promo__thumb{width:52px}
	.ez-look-promo__hero{width:120px;min-height:170px}
	.ez-look-promo__thumbs--small .ez-look-promo__thumb{width:38px}
	.ez-modal__box--look{padding:24px 16px 20px}
	.ez-look-form--modal .ez-look__items{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
	.ez-look__sizerow{flex-wrap:wrap}
	.ez-look__benefit-item strong{font-size:16px}
	.ez-look__benefit-item--total strong{font-size:22px}
	.ez-look__benefit-op--eq{margin-left:0}
	.ez-look__st-btn{flex:1 1 100%;width:auto;min-width:0;min-height:38px}
}
