/* Single Product Layout */
.single-product-wrap { margin-top: 20px; }
.product-main-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-bottom: 50px;
}
@media (max-width: 768px) {
    .product-main-grid { grid-template-columns: 1fr; }
}

/* Gallery */
.product-gallery { display: flex; flex-direction: column; gap: 15px; }
.product-main-image {
    width: 100%;
    aspect-ratio: 1/1;
    border-radius: 16px;
    overflow: hidden;
    background: #f9f9f9;
}
.product-main-image img { width: 100%; height: 100%; object-fit: cover; }
.product-thumbnails {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}
.product-thumbnails img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    border-radius: 8px;
    cursor: pointer;
    border: 2px solid transparent;
    transition: all 0.3s ease;
}
.product-thumbnails img:hover, .product-thumbnails img.active {
    border-color: var(--arynaz-primary);
}

/* Summary */
.product-summary h1 { font-size: 28px; margin-bottom: 15px; }
.product-price-large { font-size: 24px; color: var(--arynaz-primary); font-weight: bold; margin-bottom: 20px; }
.product-short-desc { color: #666; line-height: 1.8; margin-bottom: 30px; font-size: 15px; }
form.cart {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #eee;
}
form.cart .cart-qty-control { height: 48px; border-color: #ddd; }
form.cart .qty-btn { width: 40px; font-size: 20px; }
form.cart .cart-qty-input { width: 50px; font-size: 16px; }
.single_add_to_cart_button {
    flex: 1;
    padding: 0 30px;
    height: 48px;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}
.product-meta { font-size: 14px; color: #777; display: flex; flex-direction: column; gap: 10px; }
.product-meta span strong { color: var(--arynaz-text-main); font-weight: 500; }

/* Tabs */
.product-tabs-wrapper { margin-bottom: 60px; background: #fff; border-radius: 16px; box-shadow: 0 10px 40px rgba(0,0,0,0.04); overflow: hidden; border: 1px solid #f5f5f5;}
.product-tabs-header { 
    display: flex; 
    border-bottom: 1px solid #eaeaea; 
    background: #fff; 
    overflow-x: auto;
    padding: 0 20px;
    gap: 20px;
}
.product-tab-btn {
    font-family: 'Vazirmatn', Tahoma, sans-serif;
    padding: 20px 10px;
    background: transparent;
    border: none;
    font-size: 16px;
    font-weight: 500;
    color: #888;
    cursor: pointer;
    position: relative;
    white-space: nowrap;
    transition: color 0.3s ease;
}
.product-tab-btn:hover { color: var(--arynaz-text-main); }
.product-tab-btn.active { color: var(--arynaz-primary); font-weight: 600; }
.product-tab-btn::after {
    content: ''; 
    position: absolute; 
    bottom: -1px; 
    left: 50%; 
    transform: translateX(-50%) scaleX(0);
    width: 100%; 
    height: 3px; 
    background: var(--arynaz-primary);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 3px 3px 0 0;
}
.product-tab-btn.active::after {
    transform: translateX(-50%) scaleX(1);
}
.product-tab-content { padding: 30px; display: none; line-height: 1.8; color: #555;}
.product-tab-content.active { display: block; animation: fadeIn 0.4s ease; }

/* Related Articles */
.article-card { background: #fff; border-radius: 12px; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.03); transition: transform 0.3s; }
.article-card:hover { transform: translateY(-5px); }
.article-img { width: 100%; aspect-ratio: 16/9; overflow: hidden; }
.article-img img { width: 100%; height: 100%; object-fit: cover; }
.article-info { padding: 20px; }
.article-info h3 { margin: 0 0 10px 0; font-size: 18px; }
.article-info p { color: #666; font-size: 14px; margin-bottom: 15px; }
.article-meta { display: flex; justify-content: space-between; font-size: 12px; color: #999; border-top: 1px solid #eee; padding-top: 15px;}

/* Sales Popup */
/* WooCommerce standard attributes table styles (ویژگی‌های فنی) */
table.shop_attributes {
    width: 100%;
    border-collapse: collapse;
    text-align: right;
    margin: 0;
}
table.shop_attributes tr {
    border-bottom: 1px solid #eaeaea;
}
table.shop_attributes tr:last-child {
    border-bottom: none;
}
table.shop_attributes th {
    padding: 15px;
    width: 30%;
    background: #fdfdfd;
    font-weight: 600;
    color: var(--arynaz-text-main);
}
table.shop_attributes td {
    padding: 15px;
    color: #555;
    font-style: normal;
}
table.shop_attributes p {
    margin: 0;
}
form.cart {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #eee;
}
.single_add_to_cart_button {
    flex: 1;
    height: 48px;
    background: var(--arynaz-walnut);
    color: #fff;
    border: none;
    border-radius: var(--arynaz-radius-md);
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.3s ease;
    font-family: inherit;
}
.single_add_to_cart_button:hover {
    background: var(--arynaz-sand);
}

/* Related Products */
.related.products, .up-sells.products {
    margin-top: 60px;
    padding-top: 40px;
    border-top: 1px solid #eaeaea;
}
.related.products h2, .up-sells.products h2 {
    font-size: 24px;
    margin-bottom: 30px;
    color: var(--arynaz-walnut);
}

