/* ╔══════════════════════════════════════════════╗
   ║  JJW PRODUCT CARD  v3.0 — Playful Light       ║
   ╚══════════════════════════════════════════════╝ */

.jp {
    position:relative;
    background:var(--jj-card);
    border:1px solid var(--jj-border);
    border-radius:var(--jj-radius);
    overflow:hidden;
    display:flex; flex-direction:column;
    margin:0 !important; padding:0 !important; float:none !important; width:auto !important;
    transition:transform 0.3s var(--jj-ease), box-shadow 0.3s ease, border-color 0.3s ease;
}
.jp:hover {
    transform:translateY(-4px);
    box-shadow:var(--jj-shadow-lg);
    border-color:transparent;
}

/* Image */
.jp__image-link { display:block; position:relative; overflow:hidden; text-decoration:none; }
.jp__image {
    aspect-ratio:3/4; overflow:hidden;
    background:var(--jj-blue-light);
    border-radius:var(--jj-radius) var(--jj-radius) 0 0;
}
.jp__image img {
    width:100%; height:100%; object-fit:cover; display:block;
    transition:transform 0.5s var(--jj-ease-smooth);
}
.jp:hover .jp__image img { transform:scale(1.06); }

/* Badges */
.jp__badge {
    position:absolute; top:12px; left:12px;
    padding:5px 12px;
    font-family:var(--jj-font); font-size:11px; font-weight:700;
    border-radius:var(--jj-radius-pill);
    z-index:2; pointer-events:none;
}
.jp__badge--sale { background:var(--jj-pink); color:#fff; }
.jp__badge--oos { background:rgba(255,255,255,0.85); color:var(--jj-text-light); backdrop-filter:blur(4px); }

/* Info */
.jp__info { padding:14px 16px 18px; display:flex; flex-direction:column; gap:8px; flex:1; }

.jp__name {
    font-family:var(--jj-font); font-size:14px; font-weight:700;
    color:var(--jj-text); text-decoration:none;
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
    overflow:hidden; line-height:1.4;
    transition:color 0.2s ease;
}
.jp:hover .jp__name { color:var(--jj-blue); }

.jp__bottom { display:flex; align-items:center; margin-top:auto; }

.jp__price {
    font-family:var(--jj-font); font-size:15px; font-weight:700;
    color:var(--jj-text);
}
.jp__price .woocommerce-Price-amount { color:inherit; font-family:inherit; }
.jp__price del { color:var(--jj-text-faint); margin-right:6px; font-size:12px; font-weight:400; }
.jp__price ins { text-decoration:none; color:var(--jj-pink); background:none; }

/* Hide WC defaults */
.jp .onsale, .jp .button, .jp .add_to_cart_button, .jp .added_to_cart,
.jp .star-rating, .jp .price { display:none !important; }
.jp .jp__price { display:flex !important; }

/* Responsive */
@media (max-width:768px) {
    .jp__info { padding:10px 12px 14px; }
    .jp__name { font-size:13px; }
    .jp__price { font-size:14px; }
    .jp__badge { top:8px; left:8px; font-size:10px; padding:4px 10px; }
    .jp:hover { transform:none; }
}
