/* cards/product hover, size popover, accordions, cookies, view toggles */
.product.mini{border-radius:14px; background:#fff; border:var(--hairline); overflow:hidden; transition:box-shadow var(--dur-1) var(--ease), transform var(--dur-1) var(--ease)}
.product.mini:hover{box-shadow:var(--shadow-soft); transform:translateY(-3px)}
.product .thumb img{display:block; width:100%; height:220px; object-fit:cover}
.product .row{display:flex; justify-content:space-between; align-items:center; padding:10px 12px}
.btn-mini{margin:8px 12px; padding:8px 10px; font-size:14px; border-radius:10px; border:var(--hairline); background:#fff}

/* size popover */
.popover{position:absolute; right:10px; bottom:56px; background:#fff; border:var(--hairline); border-radius:12px; padding:10px; box-shadow:var(--shadow-soft); display:none}
.popover.open{display:block}
.size-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:6px}
.size{display:grid; place-items:center; height:34px; border:var(--hairline); border-radius:10px; cursor:pointer}
.size:hover{box-shadow:var(--shadow-sm)}

/* accordion */
.accordion{border-radius:12px; overflow:hidden; border:var(--hairline); background:#fff}
.acc-item + .acc-item{border-top:var(--hairline)}
.acc-head{display:flex; justify-content:space-between; align-items:center; padding:12px 14px; cursor:pointer; background:#fff}
.acc-body{padding:0 14px 14px; display:none}
.acc-item.open .acc-body{display:block}

/* cookie banner */
.cookie-banner{position:fixed; inset:auto 12px 12px 12px; z-index:70; display:none}
.cookie-banner.show{display:block}
.cookie-card{background:#fff; border:var(--hairline); border-radius:12px; padding:12px; box-shadow:var(--shadow-sm); display:flex; align-items:center; justify-content:space-between; gap:12px}

/* view toggles / filters */
.filters-compact .row-compact{display:flex; flex-wrap:wrap; gap:8px; align-items:center}
.view-btn{padding:6px 10px; border-radius:8px; border:var(--hairline); background:#fff}
.price-input{width:90px}
.sizes-line label{margin-right:8px}
