/* ============================================================
   JazairShop — WooCommerce Styles
   ============================================================ */

/* ── General WC resets ─────────────────────────────────── */
.woocommerce-page main,
.single-product main { direction: rtl; }

.woocommerce-notices-wrapper { max-width: 1280px; margin: 0 auto; padding: 0 1.25rem; }

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    border-top: none;
    border-right: 4px solid var(--primary);
    background: var(--primary-light);
    color: var(--text);
    padding: .85rem 1.1rem .85rem 1.5rem;
    border-radius: var(--radius-sm);
    margin-bottom: 1rem;
    display: flex;
    align-items: center;
    gap: .6rem;
    font-size: .9rem;
}
.woocommerce-error { border-right-color: #ef4444; background: #fef2f2; }
.woocommerce-info { border-right-color: #3b82f6; background: #eff6ff; }

.woocommerce-message::before,
.woocommerce-info::before { display: none; }

/* ── Buttons ───────────────────────────────────────────── */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
    font-family: var(--font-arabic);
    background: var(--primary);
    color: var(--white);
    border: none;
    padding: .7rem 1.5rem;
    border-radius: var(--radius-sm);
    font-size: .9rem;
    font-weight: 600;
    cursor: pointer;
    transition: all var(--transition);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover { background: var(--primary-dark); color: var(--white); }
.woocommerce a.button.alt,
.woocommerce button.button.alt { background: var(--accent); }
.woocommerce a.button.alt:hover { background: var(--accent-dark); }

/* ── Form fields ───────────────────────────────────────── */
.woocommerce form .form-row { margin-bottom: 1rem; }
.woocommerce form .form-row label { font-size: .9rem; font-weight: 600; color: var(--text); display: block; margin-bottom: .35rem; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea {
    font-family: var(--font-arabic);
    width: 100%;
    padding: .75rem 1rem;
    border: 1.5px solid var(--border);
    border-radius: var(--radius-sm);
    font-size: .95rem;
    color: var(--text);
    background: var(--white);
    transition: border-color var(--transition);
    outline: none;
    direction: rtl;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row select:focus,
.woocommerce form .form-row textarea:focus { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(26,107,58,.1); }

/* ── Order review table ────────────────────────────────── */
.woocommerce-checkout-review-order-table,
.woocommerce table.shop_table {
    width: 100%;
    border-collapse: collapse;
    font-size: .88rem;
}
.woocommerce-checkout-review-order-table th,
.woocommerce table.shop_table th {
    background: var(--surface);
    padding: .65rem .85rem;
    font-weight: 600;
    text-align: right;
    border: 1px solid var(--border);
    font-size: .85rem;
}
.woocommerce-checkout-review-order-table td,
.woocommerce table.shop_table td {
    padding: .65rem .85rem;
    border: 1px solid var(--border);
    vertical-align: middle;
}
.woocommerce table.shop_table tfoot tr th,
.woocommerce table.shop_table tfoot tr td { font-weight: 600; }
.woocommerce table.shop_table tfoot .order-total td { color: var(--primary); font-size: 1rem; font-weight: 700; }

/* ── Cart page ─────────────────────────────────────────── */
.woocommerce-cart-form { margin-bottom: 2rem; }
.cart-collaterals { display: grid; grid-template-columns: 1fr 380px; gap: 2rem; align-items: start; }
@media (max-width: 768px) { .cart-collaterals { grid-template-columns: 1fr; } }

.cart_totals h2 {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 1rem;
    padding-bottom: .75rem;
    border-bottom: 2px solid var(--primary);
}
.cart_totals table { margin-bottom: 1rem; }

/* Product quantity in cart */
.woocommerce-cart-form .quantity { display: flex; }
.woocommerce-cart-form .qty {
    font-family: var(--font-numbers);
    width: 60px;
    text-align: center;
    border: 1.5px solid var(--border);
    border-radius: var(--radius-sm);
    padding: .4rem;
    font-size: .95rem;
    outline: none;
}

/* ── Product tabs ─────────────────────────────────────── */
.woocommerce-tabs .tabs {
    display: flex;
    list-style: none;
    gap: 0;
    border-bottom: 2px solid var(--border);
    margin-bottom: 1.5rem;
}
.woocommerce-tabs .tabs li a {
    display: block;
    padding: .75rem 1.25rem;
    font-size: .92rem;
    font-weight: 600;
    color: var(--text-muted);
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    transition: all var(--transition);
}
.woocommerce-tabs .tabs li.active a { color: var(--primary); border-bottom-color: var(--primary); }
.woocommerce-tabs .panel { padding: 1.5rem 0; }

/* ── Reviews ───────────────────────────────────────────── */
.woocommerce #reviews #comments ol.commentlist { padding: 0; list-style: none; }
.woocommerce #reviews #comments ol.commentlist .review {
    padding: 1.25rem;
    background: var(--surface);
    border-radius: var(--radius-md);
    margin-bottom: 1rem;
    border: 1px solid var(--border);
}
.woocommerce #reviews #comments ol.commentlist .review .meta {
    font-size: .82rem;
    color: var(--text-muted);
    margin-bottom: .5rem;
}

/* ── My Account ─────────────────────────────────────────── */
.woocommerce-MyAccount-navigation {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    overflow: hidden;
    margin-bottom: 1.5rem;
}
.woocommerce-MyAccount-navigation ul { list-style: none; }
.woocommerce-MyAccount-navigation ul li a {
    display: flex;
    align-items: center;
    gap: .6rem;
    padding: .8rem 1.25rem;
    font-size: .9rem;
    color: var(--text);
    border-bottom: 1px solid var(--border);
    transition: all var(--transition);
}
.woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-MyAccount-navigation ul li.is-active a {
    background: var(--primary-light);
    color: var(--primary);
    font-weight: 600;
}

/* ── Breadcrumbs ────────────────────────────────────────── */
.woocommerce-breadcrumb {
    font-size: .8rem;
    color: var(--text-muted);
    margin-bottom: .75rem;
}
.woocommerce-breadcrumb a { color: var(--text-muted); }

/* ── Pagination ─────────────────────────────────────────── */
.woocommerce nav.woocommerce-pagination ul {
    display: flex;
    gap: .4rem;
    list-style: none;
    justify-content: center;
    flex-wrap: wrap;
}
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce nav.woocommerce-pagination ul li a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px; height: 38px;
    border-radius: var(--radius-sm);
    border: 1.5px solid var(--border);
    font-size: .88rem;
    font-family: var(--font-numbers);
    color: var(--text);
    transition: all var(--transition);
    background: var(--white);
}
.woocommerce nav.woocommerce-pagination ul li a:hover { border-color: var(--primary); color: var(--primary); }
.woocommerce nav.woocommerce-pagination ul li span.current {
    background: var(--primary);
    color: var(--white);
    border-color: var(--primary);
}

/* ── Stock badge ────────────────────────────────────────── */
.in-stock  { color: #16a34a; font-weight: 600; font-size: .85rem; }
.out-of-stock { color: #dc2626; font-weight: 600; font-size: .85rem; }

/* ── Order status badges ────────────────────────────────── */
mark.order-status {
    padding: .2rem .65rem;
    border-radius: var(--radius-xl);
    font-size: .75rem;
    font-weight: 600;
    background: var(--surface-2);
}
mark.order-status.status-pending    { background: #fef9c3; color: #854d0e; }
mark.order-status.status-processing { background: #dbeafe; color: #1e40af; }
mark.order-status.status-completed  { background: #dcfce7; color: #166534; }
mark.order-status.status-cancelled  { background: #fee2e2; color: #991b1b; }
mark.order-status.status-on-hold    { background: #ffedd5; color: #9a3412; }

/* ── Checkout ────────────────────────────────────────────── */
#order_review_heading { display: none; }

.woocommerce-checkout-review-order-table .cart-subtotal th,
.woocommerce-checkout-review-order-table .order-total th { background: transparent; }
.woocommerce-checkout-review-order-table .order-total td { color: var(--primary); font-size: 1.05rem; font-weight: 800; }

/* ── Catalog ordering select ──────────────────────────── */
.woocommerce-ordering select {
    font-family: var(--font-arabic);
    padding: .5rem .85rem;
    border: 1.5px solid var(--border);
    border-radius: var(--radius-sm);
    font-size: .85rem;
    outline: none;
    cursor: pointer;
    background: var(--white);
    direction: rtl;
    color: var(--text);
}

/* ── Result count ──────────────────────────────────────── */
.woocommerce-result-count {
    font-size: .82rem;
    color: var(--text-muted);
}

/* ── Admin bar shift fix ─────────────────────────────────── */
.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .site-header { top: 46px; } }

/* ── Responsive ─────────────────────────────────────────── */
@media (max-width: 768px) {
    .woocommerce-checkout form.checkout { grid-template-columns: 1fr; }
    .woocommerce .woocommerce-ordering { width: 100%; }
    .woocommerce table.shop_table { font-size: .8rem; }
    .woocommerce table.shop_table td, .woocommerce table.shop_table th { padding: .5rem; }
}
