/* /2hdsneakers/assets/sneakers.css */

.sneakers-body{
  background:#fff;
  color:#111;
  font-family:"Libre Franklin", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

.sneakers-header{
  position:sticky;
  top:0;
  z-index:1000;
  background:#fff;
  border-bottom:1px solid #e9e9e9;
}

.sneakers-header-inner{
  max-width:1200px;
  margin:0 auto;
  padding:14px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.sneakers-logo{
  max-width:150px;
  height:auto;
  display:block;
}

.sneakers-close-btn{
  background:#111;
  color:#fff;
  border:0;
  border-radius:10px;
  padding:10px 14px;
  font-weight:700;
  cursor:pointer;
}

.sneakers-close-btn:hover{ opacity:.9; }

.sneakers-main{
  max-width:1200px;
  margin:0 auto;
  padding:18px 16px 40px;
}

/* Layout sidebar + grid */
.sneakers-layout{
  display:grid;
  grid-template-columns: 260px 1fr;
  gap:18px;
}

@media (max-width: 992px){
  .sneakers-layout{ grid-template-columns: 1fr; }
}

.sneakers-sidebar{
  border:1px solid #eee;
  border-radius:14px;
  padding:14px;
  background:#fafafa;
}

.sneakers-sidebar h2{
  margin:0 0 10px;
  font-size:1.05rem;
}

.sneakers-filter-link{
  display:block;
  padding:9px 10px;
  border-radius:10px;
  text-decoration:none;
  color:#111;
}

.sneakers-filter-link:hover{
  background:#f1f1f1;
}

.sneakers-filter-link.is-active{
  background:#111;
  color:#fff;
}

.sneakers-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:14px;
}

@media (max-width: 992px){
  .sneakers-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px){
  .sneakers-grid{ grid-template-columns: 1fr; }
}

.sneakers-card{
  display:block;
  border:1px solid #eee;
  border-radius:16px;
  overflow:hidden;
  text-decoration:none;
  color:#111;
  background:#fff;
  transition:transform .08s ease, box-shadow .08s ease;
}

.sneakers-card:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(0,0,0,.06);
}

.sneakers-thumb{
  width:100%;
  aspect-ratio: 1 / 1;
  object-fit:cover;
  background:#f3f3f3;
  display:block;
}

.sneakers-card-body{
  padding:12px;
  text-align:center;
}

.sneakers-title{
  font-weight:800;
  margin:0 0 6px;
  font-size:.98rem;
}

.sneakers-price{
  margin:0;
  font-weight:900;
  color:#111;
}

.sneakers-muted{
  color:#666;
}

/* Page details */
.sneakers-details{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:18px;
  align-items:start;
}

@media (max-width: 992px){
  .sneakers-details{ grid-template-columns: 1fr; }
}

.sneakers-details-card{
  border:1px solid #eee;
  border-radius:16px;
  padding:16px;
  background:#fff;
}

.sneakers-details-img{
  width:100%;
  border-radius:16px;
  border:1px solid #eee;
  background:#f3f3f3;
  display:block;
}

.sneakers-kv{
  display:grid;
  grid-template-columns: 1fr;
  gap:8px;
  margin-top:12px;
}

.sneakers-kv div{
  padding:10px 12px;
  border-radius:12px;
  background:#fafafa;
  border:1px solid #eee;
}

/* ====== Product details (modern) ====== */

.sneakers-breadcrumbs{
  display:flex;
  align-items:center;
  gap:10px;
  margin: 6px 0 14px;
  color:#666;
  font-size:.95rem;
}

.sneakers-bc-link{
  color:#111;
  text-decoration:none;
  font-weight:800;
}

.sneakers-bc-link:hover{ text-decoration:underline; }
.sneakers-bc-sep{ color:#999; }
.sneakers-bc-current{ color:#666; }

.sneakers-product{
  display:grid;
  grid-template-columns: 1.1fr .9fr;
  gap:18px;
  align-items:start;
}

@media (max-width: 992px){
  .sneakers-product{ grid-template-columns: 1fr; }
}

.sneakers-media-card{
  border:1px solid #eee;
  border-radius:18px;
  background:#fff;
  padding:12px;
}

.sneakers-product-img{
  width:100%;
  border-radius:14px;
  border:1px solid #eee;
  background:#f3f3f3;
  display:block;
  object-fit:cover;
}

.sneakers-thumbs{
  display:flex;
  gap:10px;
  margin-top:12px;
  overflow:auto;
  padding-bottom:2px;
}

.sneakers-thumb{
  border:1px solid #eee;
  border-radius:12px;
  padding:0;
  background:#fff;
  cursor:pointer;
  flex: 0 0 auto;
  width:78px;
  height:78px;
  overflow:hidden;
}

.sneakers-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.sneakers-thumb.is-active{
  border-color:#111;
  box-shadow:0 6px 16px rgba(0,0,0,.08);
}

.sneakers-info-card{
  border:1px solid #eee;
  border-radius:18px;
  background:#fff;
  padding:16px;
}

.sneakers-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.sneakers-product-title{
  margin:0;
  font-size:1.45rem;
  font-weight:950;
  letter-spacing:-0.2px;
  line-height:1.15;
}

.sneakers-stock-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 10px;
  border-radius:999px;
  font-weight:900;
  font-size:.9rem;
  border:1px solid #eee;
  white-space:nowrap;
}

.sneakers-stock-badge.is-ok{
  color:#0f5132;
  background:#d1e7dd;
  border-color:#badbcc;
}
.sneakers-stock-badge.is-out{
  color:#842029;
  background:#f8d7da;
  border-color:#f5c2c7;
}

.sneakers-price-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid #eee;
}

@media (max-width: 520px){
  .sneakers-price-row{ flex-direction:column; align-items:flex-start; }
}

.sneakers-price-pill{
  display:inline-flex;
  align-items:center;
  padding:10px 14px;
  border-radius:14px;
  background:#111;
  color:#fff;
  font-weight:950;
  font-size:1.08rem;
}

.sneakers-store-note{
  color:#666;
  font-weight:700;
}

.sneakers-specs{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:10px;
  margin-top:14px;
}

@media (max-width: 520px){
  .sneakers-specs{ grid-template-columns: 1fr; }
}

.sneakers-spec{
  border:1px solid #eee;
  border-radius:14px;
  background:#fafafa;
  padding:12px 12px;
}

.sneakers-spec-label{
  color:#666;
  font-weight:800;
  font-size:.85rem;
  margin-bottom:4px;
}

.sneakers-spec-value{
  color:#111;
  font-weight:950;
  font-size:1rem;
}

.sneakers-actions{
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid #eee;
}

.sneakers-backlink{
  display:inline-block;
  color:#111;
  text-decoration:none;
  font-weight:950;
}

.sneakers-backlink:hover{ text-decoration:underline; }

.sneakers-notfound{
  padding:14px 0;
}

.sneakers-title{
  font-weight:900;
  margin:0 0 6px;
  font-size:1rem;
}

.sneakers-size{
  margin:0 0 8px;
  color:#666;
  font-weight:800;
  font-size:.92rem;
}

.sneakers-price{
  margin:0;
  font-weight:950;
  color:#BC0D0D; /* ✅ ton rouge */
}

/* Sidebar empty text (évite inline) */
.sneakers-sidebar-empty{
  margin-top:10px;
}

/* Cards */
.sneakers-card{
  display:block;
  text-decoration:none;
  color:#111;
  border:1px solid #eee;
  border-radius:16px;
  background:#fff;
  overflow:hidden;
  transition: transform .12s ease, box-shadow .12s ease;
}

.sneakers-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 26px rgba(0,0,0,.08);
}

.sneakers-card-media{
  width:100%;
  aspect-ratio: 4 / 3;  /* ✅ grande photo */
  background:#f3f3f3;
}

.sneakers-card-img{
  width:100%;
  height:100%;
  display:block;
  object-fit: cover;       /* rendu pro dans la grille */
  object-position: center;
}

.sneakers-card-body{
  padding:12px 12px 14px;
  text-align:center;
}

.sneakers-title{
  font-weight:950;
  margin:0 0 6px;
  font-size:1rem;
}

.sneakers-size{
  margin:0 0 8px;
  color:#666;
  font-weight:800;
  font-size:.92rem;
}

.sneakers-price{
  margin:0;
  font-weight:950;
  color:#BC0D0D;
}

.sneakers-intro{
  border:1px solid #eee;
  background:#fff;
  border-radius:16px;
  padding:16px 16px 14px;
  margin:0 0 16px;
}

.sneakers-intro-title{
  margin:0 0 10px;
  font-size:1.15rem;
  font-weight:950;
}

.sneakers-intro-text{
  margin:0 0 8px;
  color:#222;
  line-height:1.45;
  font-weight:500;
}

.sneakers-intro-note{
  margin-top:10px;
  padding-top:10px;
  border-top:1px dashed #e6e6e6;
}
