/* =====================================================================
   Marangoz Aletleri - Vitrin (C1)
   vitrin-bilesen.css : urun izgarasi, urun karti (pil stok gostergeli)
   ===================================================================== */

/* --- Izgara (yeni sayfalar + eski liste sayfalari) --- */
.vt-izgara,
body.vitrin .product-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 18px;
}

/* --- Urun karti --- */
.vt-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: #FFFFFF;
    border: 1.5px solid var(--vt-cizgi);
    border-radius: var(--vt-r-l);
    overflow: hidden;
    transition: border-color .2s, transform .2s var(--vt-ease);
}
.vt-card:hover { border-color: var(--vt-kobalt); transform: translateY(-3px); }

.vt-card-etiket { position: absolute; left: 14px; top: 14px; z-index: 3; }

.vt-card-gorsel {
    aspect-ratio: 1 / .9;
    padding: 14px;
    background: #FFFFFF;
    overflow: hidden;
}
.vt-card-gorsel img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform .35s var(--vt-ease);
}
.vt-card:hover .vt-card-gorsel img { transform: scale(1.06); }
.vt-card-yok {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    border-radius: 12px;
    background: var(--vt-zemin);
    color: var(--vt-soluk);
    font-size: 14px;
}

.vt-card-govde {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    gap: 6px;
    padding: 14px 18px 18px;
    border-top: 1px solid var(--vt-cizgi-2);
}
.vt-card-kat { font-size: 13.5px; color: var(--vt-soluk); }
.vt-card-ad {
    font-stretch: 72%;
    font-weight: 800;
    font-size: 24px;
    line-height: 1.05;
    color: var(--vt-gece);
    text-decoration: none;
    overflow-wrap: anywhere;
}
.vt-card-ad:hover { color: var(--vt-kobalt); text-decoration: none; }
/* Kartin tamami tiklanir; tek erisilebilir baglanti urun adidir */
.vt-card-ad::after { content: ''; position: absolute; inset: 0; z-index: 1; }

.vt-card-alt {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: auto;
    padding-top: 10px;
}
.vt-card-sepet { position: relative; z-index: 2; margin: 0; }
.vt-card-ekle {
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 12px;
    background: var(--vt-turuncu);
    color: var(--vt-gece);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: filter .2s, transform .15s, opacity .2s;
}
.vt-card-ekle:hover { filter: brightness(1.07); }
.vt-card-ekle:active { transform: scale(.94); }
.vt-card-ekle[disabled] { background: var(--vt-cizgi); color: var(--vt-gri); cursor: not-allowed; filter: none; transform: none; }

/* Fare olan cihazlarda "sepete ekle" kartin uzerine gelince belirir; dokunmatikte hep gorunur */
@media (hover: hover) {
    .vt-card-ekle { opacity: 0; transform: translateY(6px); }
    .vt-card:hover .vt-card-ekle,
    .vt-card:focus-within .vt-card-ekle { opacity: 1; transform: none; }
}

/* Kartin uzerine gelince pil "sarj olur" */
.vt-card:hover .vt-pil i.on { animation: vt-sarj .45s ease both; }
.vt-card:hover .vt-pil i.on:nth-child(2) { animation-delay: .08s; }
.vt-card:hover .vt-pil i.on:nth-child(3) { animation-delay: .16s; }
.vt-card:hover .vt-pil i.on:nth-child(4) { animation-delay: .24s; }

/* --- Duyarli --- */
@media (max-width: 1400px) {
    .vt-izgara, body.vitrin .product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 1100px) {
    .vt-izgara, body.vitrin .product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .vt-izgara, body.vitrin .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .vt-card { border-radius: 18px; }
    .vt-card:hover { transform: none; }
    .vt-card-gorsel { padding: 8px; }
    .vt-card-govde { padding: 10px 12px 12px; gap: 4px; }
    .vt-card-kat { font-size: 12.5px; }
    .vt-card-ad { font-size: 20px; }
    .vt-card .vt-fiyat { font-size: 20px; }
    .vt-card .vt-stok { font-size: 12.5px; }
}
