/* ===== Bigger eCommerce — Components ===== */

/* ===== Multi-Step Checkout — اختيار طريقة الشحن ===== */
.be-checkout-shipping {
    margin-top: 20px;
    padding-top: 16px;
    border-top: 1px solid var(--be-border-light);
}
.be-checkout-shipping__title {
    font-size: 15px;
    font-weight: 700;
    color: var(--be-text);
    margin-bottom: 12px;
}
.be-checkout-shipping__hint {
    color: var(--be-text-muted, #999);
    font-size: 13px;
    font-style: italic;
    padding: 8px 0;
}
.be-checkout-shipping__empty {
    color: var(--be-danger, #dc3232);
    font-size: 13px;
    padding: 8px 0;
}
.be-checkout-shipping__loading {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--be-text-secondary, #666);
    font-size: 13px;
    padding: 8px 0;
}
@keyframes spin {
    to { transform: rotate(360deg); }
}
.be-checkout-shipping__option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 12px 14px;
    border: 1.5px solid var(--be-border);
    border-radius: var(--be-radius);
    margin-bottom: 8px;
    cursor: pointer;
    transition: border-color var(--be-transition-fast), background var(--be-transition-fast);
}
.be-checkout-shipping__option:hover {
    border-color: var(--be-brand);
}
.be-checkout-shipping__option.is-selected {
    border-color: var(--be-brand);
    background: var(--be-brand-light);
}
.be-checkout-shipping__option input[type="radio"] {
    accent-color: var(--be-brand);
    width: 18px;
    height: 18px;
    cursor: pointer;
    flex-shrink: 0;
}
.be-checkout-shipping__name {
    flex: 1;
    font-size: 14px;
    font-weight: 600;
    color: var(--be-text);
}
.be-checkout-shipping__cost {
    font-size: 14px;
    font-weight: 700;
    color: var(--be-brand);
    white-space: nowrap;
}

/* تنبيه الشحن في ملخص السلة — يُحسب عند الدفع */
.be-cart-shipping-hint {
    color: var(--be-text-muted, #999);
    font-size: 13px;
    font-style: italic;
}

/* ===== Journey Steps (موحّد عبر السلة/الدفع/الشكر) ===== */
.be-journey-steps {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding: 12px 0 18px;
    margin-bottom: 20px;
    border-bottom: 1px solid var(--be-border-light);
    scrollbar-width: none;
}
.be-journey-steps::-webkit-scrollbar { display: none; }
.be-journey-step {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
    font-size: 14px;
    color: var(--be-text-secondary);
    white-space: nowrap;
}
.be-journey-step__marker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--be-bg-gray);
    color: var(--be-text-secondary);
    font-size: 13px;
    font-weight: 700;
    flex-shrink: 0;
}
.be-journey-step__label { font-weight: 500; }
.be-journey-step--done {
    color: var(--be-text);
}
.be-journey-step--done .be-journey-step__marker {
    background: var(--be-success, #00a32a);
    color: #fff;
}
.be-journey-step--active {
    color: var(--be-text);
    font-weight: 700;
}
.be-journey-step--active .be-journey-step__marker {
    background: var(--be-brand);
    color: #fff;
    box-shadow: 0 0 0 4px var(--be-brand-light);
}
.be-journey-step--pending .be-journey-step__label { opacity: 0.6; }
.be-journey-step__sep {
    flex: 1 1 auto;
    min-width: 12px;
    height: 1px;
    background: var(--be-border-light);
}
@media (max-width: 480px) {
    .be-journey-steps { gap: 4px; }
    .be-journey-step { font-size: 12px; }
    .be-journey-step__marker { width: 24px; height: 24px; font-size: 12px; }
    .be-journey-step__sep { min-width: 8px; }
}

/* ===== Legacy: keep .be-checkout-steps aliases (backward compat) ===== */
.be-checkout-steps {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    font-size: 14px;
    color: var(--be-text-secondary);
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--be-border-light);
}
.be-page--center .be-journey-steps { justify-content: center; }

.be-star {
    color: var(--be-brand);
    font-size: 1em;
    line-height: 1;
}

.be-star--empty {
    color: var(--be-text-muted);
}

.be-countdown {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    border: 1px solid var(--be-badge-countdown);
    border-radius: var(--be-radius-sm);
    font-size: 13px;
    color: var(--be-badge-countdown);
}

.be-countdown__timer {
    display: flex;
    align-items: center;
    gap: 4px;
}

.be-cd-unit {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    min-width: 28px;
}

.be-cd-unit b {
    font-size: 16px;
    font-weight: 800;
}

.be-cd-unit small {
    font-size: 10px;
    color: var(--be-text-muted);
}

.be-cd-sep {
    font-weight: 700;
    color: var(--be-text-muted);
}

.be-toast {
    position: fixed;
    bottom: 20px;
    inset-inline-start: 20px;
    z-index: 9999;
    padding: 14px 20px;
    border-radius: var(--be-radius);
    font-size: 14px;
    font-weight: 600;
    box-shadow: var(--be-shadow-md);
    opacity: 0;
    transform: translateY(10px);
    transition: opacity var(--be-transition), transform var(--be-transition);
    pointer-events: none;
}

.be-toast.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.be-toast--success {
    background: var(--be-success-light);
    color: var(--be-success);
    border-inline-start: 4px solid var(--be-success);
}

.be-toast--error {
    background: var(--be-danger-light);
    color: var(--be-danger);
    border-inline-start: 4px solid var(--be-danger);
}

.be-toast--info {
    background: var(--be-info-light);
    color: var(--be-info);
    border-inline-start: 4px solid var(--be-info);
}

/* ===== Breadcrumb ===== */
.be-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
    margin-bottom: 12px;
    font-size: 13px;
}

.be-breadcrumb__item {
    color: var(--be-text-secondary);
    text-decoration: none;
    transition: color var(--be-transition-fast);
}

.be-breadcrumb__item:hover {
    color: var(--be-brand);
}

.be-breadcrumb__sep {
    color: var(--be-text-muted);
    user-select: none;
}

/* ===== Lightbox ===== */
.be-lightbox {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.9);
    backdrop-filter: blur(2px);
}

.be-lightbox.is-open {
    display: flex;
}

.be-lightbox__img {
    max-width: 90vw;
    max-height: 90vh;
    object-fit: contain;
    border-radius: var(--be-radius);
    box-shadow: var(--be-shadow-hover);
}

.be-lightbox__video,
.be-lightbox__embed {
    max-width: 90vw;
    max-height: 90vh;
    width: min(1280px, 90vw);
    aspect-ratio: 16/9;
    border-radius: var(--be-radius);
    box-shadow: var(--be-shadow-hover);
    background: #000;
}

.be-lightbox__close {
    position: absolute;
    top: 20px;
    inset-inline-end: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--be-lb-nav-size, 44px);
    height: var(--be-lb-nav-size, 44px);
    border: none;
    border-radius: 50%;
    background: rgba(128, 128, 128, 0.5);
    color: #ffffff;
    cursor: pointer;
    transition: opacity var(--be-transition);
    z-index: 10001;
    padding: 5px;
}

.be-lightbox__close:hover {
    opacity: 0.8;
    background: rgba(128, 128, 128, 0.7);
}

.be-lightbox__close svg {
    display: block !important;
    width: 24px;
    height: 24px;
}

.be-lightbox__close svg line {
    stroke: #ffffff;
    stroke-width: 2.5;
}

.be-lightbox__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--be-lb-nav-size, 44px);
    height: var(--be-lb-nav-size, 44px);
    border: none;
    border-radius: 50%;
    background: var(--be-lb-nav-bg, #000);
    color: var(--be-lb-nav-color, #fff);
    cursor: pointer;
    transition: opacity var(--be-transition);
}

.be-lightbox__nav:hover {
    opacity: 0.8;
}

.be-lightbox__prev {
    inset-inline-start: 20px;
}

.be-lightbox__next {
    inset-inline-end: 20px;
}

.be-lightbox__icon {
    display: none;
    width: 24px;
    height: 24px;
}

.be-lightbox__icon-close {
    display: block !important;
    width: 24px;
    height: 24px;
}

.be-lightbox--icon-chevron .be-lightbox__icon--chevron,
.be-lightbox--icon-arrow .be-lightbox__icon--arrow,
.be-lightbox--icon-triangle .be-lightbox__icon--triangle,
.be-lightbox--icon-caret .be-lightbox__icon--caret {
    display: block;
}

@media (max-width: 768px) {
    .be-lightbox__close {
        top: 10px;
        inset-inline-end: 10px;
    }

    .be-lightbox__prev {
        inset-inline-start: 8px;
    }

    .be-lightbox__next {
        inset-inline-end: 8px;
    }

    .be-lightbox__icon {
        width: 20px;
        height: 20px;
    }
}

/* ===== Shared Page Styles ===== */
.be-page {
    font-family: var(--be-font);
    color: var(--be-text);
    box-sizing: border-box;
    max-width: var(--be-container, 1370px);
    margin: 0 auto;
    padding: 20px;
}
.be-page * { box-sizing: border-box; }
.be-page--center { max-width: 600px; }
.be-page__title {
    font-size: 24px;
    font-weight: 800;
    margin: 0 0 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--be-border-light);
}
.be-page__subtitle { font-size: 18px; font-weight: 700; margin: 0 0 16px; }
.be-page__card {
    background: var(--be-bg-white);
    border-radius: var(--be-radius-lg);
    padding: 24px;
    margin-bottom: 16px;
    box-shadow: var(--be-shadow);
}
.be-page__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 12px 28px;
    background: var(--be-brand);
    color: #fff;
    border: none;
    border-radius: var(--be-radius);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
    transition: background var(--be-transition);
    font-family: inherit;
}
.be-page__btn:hover { background: var(--be-brand-hover); }
.be-page__btn--outline {
    background: transparent;
    border: 2px solid var(--be-border);
    color: var(--be-text);
}
.be-page__btn--outline:hover {
    border-color: var(--be-brand);
    color: var(--be-brand);
    background: var(--be-brand-light);
}
.be-page__input {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid var(--be-border);
    border-radius: var(--be-radius);
    font-size: 14px;
    outline: none;
    font-family: inherit;
    transition: border-color var(--be-transition);
}
.be-page__input:focus { border-color: var(--be-brand); }
.be-page__label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 6px;
    color: var(--be-text-secondary);
}
.be-page__empty { text-align: center; padding: 60px 20px; }
.be-page__empty svg { margin: 0 auto 16px; display: block; color: var(--be-text-muted); opacity: 0.3; }
.be-page__empty h2 { font-size: 20px; font-weight: 700; margin: 0 0 8px; }
.be-page__empty p { font-size: 15px; color: var(--be-text-secondary); margin: 0 0 20px; }
.be-page__grid2 { display: grid; grid-template-columns: 1fr 360px; gap: 16px; }
.be-req { color: var(--be-danger); }

/* ===== Cart ===== */
.be-cart-table-wrap { padding: 0; overflow: hidden; }
.be-cart-table { width: 100%; border-collapse: collapse; }
.be-cart-table thead { background: var(--be-bg-gray); }
.be-cart-table th { padding: 12px 16px; font-size: 13px; color: var(--be-text-secondary); text-align: start; }
.be-cart-table td { padding: 16px; border-bottom: 1px solid var(--be-border-light); }
.be-cart-table__price-col, .be-cart-table__qty-col, .be-cart-table__total-col, .be-cart-table__remove-col { text-align: center; }
.be-cart-item { display: flex; gap: 12px; align-items: center; }
.be-cart-item__img img { width: 64px; height: 64px; border-radius: var(--be-radius-sm); object-fit: cover; }
.be-cart-item__name { font-size: 14px; font-weight: 600; color: var(--be-text); text-decoration: none; display: block; }
.be-cart-item__name:hover { color: var(--be-brand); }
.be-cart-item__var { font-size: 12px; color: var(--be-text-muted); display: block; }
.be-cart-table__price, .be-cart-table__total { font-weight: 600; color: var(--be-brand); }
.be-cart-remove { font-size: 20px; color: var(--be-text-muted); text-decoration: none; }
.be-cart-remove:hover { color: var(--be-danger); }
.be-qty-control { display: inline-flex; border: 1px solid var(--be-border); border-radius: var(--be-radius); overflow: hidden; }
.be-page-qty-btn { width: 32px; height: 36px; border: none; background: var(--be-bg-gray); cursor: pointer; font-size: 16px; }
.be-page-qty-input { width: 48px; height: 36px; border: none; text-align: center; font-size: 14px; outline: none; border-inline: 1px solid var(--be-border); -moz-appearance: textfield; }
.be-page-qty-input::-webkit-outer-spin-button, .be-page-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

/* ===== Cart Summary ===== */
.be-cart-summary__title { font-size: 18px; font-weight: 700; margin: 0 0 16px; }
.be-cart-summary__row { display: flex; justify-content: space-between; margin-bottom: 8px; font-size: 14px; }
.be-cart-summary__total { display: flex; justify-content: space-between; font-size: 18px; font-weight: 800; border-top: 1px solid var(--be-border-light); padding-top: 12px; margin-top: 12px; }
.be-cart-summary__total b { color: var(--be-brand); }
.be-cart-summary__checkout { width: 100%; margin-top: 12px; }
.be-cart-coupon { display: flex; gap: 8px; margin-top: 12px; }
.be-cart-coupon input { flex: 1; padding: 10px 12px; border: 1px solid var(--be-border); border-radius: var(--be-radius); font-size: 14px; }

/* ===== Cart Shipping ===== */
.be-cart-shipping {
    margin: 12px 0;
    padding: 12px;
    background: var(--be-bg-gray);
    border-radius: var(--be-radius);
}
.be-cart-shipping__title {
    font-size: 13px;
    font-weight: 700;
    color: var(--be-text-secondary);
    margin-bottom: 8px;
}
.be-cart-shipping__option {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border: 1px solid var(--be-border);
    border-radius: var(--be-radius-sm);
    margin-bottom: 6px;
    cursor: pointer;
    background: var(--be-bg-white);
    transition: border-color var(--be-transition-fast), background var(--be-transition-fast);
}
.be-cart-shipping__option:hover {
    border-color: var(--be-brand);
}
.be-cart-shipping__option.is-selected {
    border-color: var(--be-brand);
    background: var(--be-brand-light);
}
.be-cart-shipping__option input[type=radio] {
    accent-color: var(--be-brand);
    width: 16px;
    height: 16px;
}
.be-cart-shipping__name {
    flex: 1;
    font-size: 13px;
    font-weight: 600;
    color: var(--be-text);
}
.be-cart-shipping__cost {
    font-size: 13px;
    font-weight: 700;
    color: var(--be-brand-deep);
}
.be-cart-shipping__note {
    font-size: 11px;
    color: var(--be-text-muted);
    margin: 6px 0 0;
}

/* ===== Cart Payments ===== */
.be-cart-payments {
    margin-top: 12px;
}
.be-cart-payments__title {
    font-size: 13px;
    font-weight: 700;
    color: var(--be-text-secondary);
    margin-bottom: 8px;
}
.be-cart-payments__list {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.be-cart-payments__item {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    border: 1px solid var(--be-border-light);
    border-radius: var(--be-radius-sm);
    font-size: 13px;
    color: var(--be-text-secondary);
}
.be-cart-payments__item svg {
    color: var(--be-success);
    flex-shrink: 0;
}

/* ===== Checkout ===== */
.be-checkout-form { display: flex; flex-direction: column; gap: 16px; }
.be-checkout-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.be-checkout-field { display: flex; flex-direction: column; gap: 4px; }
.be-checkout-field--full { grid-column: 1 / -1; }
.be-checkout-submit { width: 100%; margin-top: 8px; }

/* ===== Checkout Auth Section ===== */
.be-checkout-auth {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}
.be-checkout-auth__info {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: flex-start;
}
.be-checkout-auth__info p { font-size: 14px; color: var(--be-text-secondary); margin: 0; }

/* ===== Checkout Steps ===== */
.be-checkout-steps {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 20px;
    font-size: 14px;
    color: var(--be-text-secondary);
}
.be-checkout-step {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--be-bg-gray);
    color: var(--be-text-muted);
    font-size: 14px;
    font-weight: 700;
}
.be-checkout-step.is-active {
    background: var(--be-brand);
    color: #fff;
}
.be-checkout-step.is-done {
    background: var(--be-success);
    color: #fff;
}

/* ===== Checkout Checkbox (ship to billing) ===== */
.be-checkout-checkbox {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 16px 0;
    font-size: 14px;
    color: var(--be-text);
    cursor: pointer;
}
.be-checkout-checkbox input[type=checkbox] {
    accent-color: var(--be-brand);
    width: 18px;
    height: 18px;
}

/* ===== Checkout Coupon ===== */
.be-checkout-coupon {
    display: flex;
    gap: 8px;
    margin: 16px 0;
}

/* ===== Payment Methods (Radio) ===== */
.be-payment-radio {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    padding: 10px 12px;
    border: 1px solid var(--be-border-light);
    border-radius: var(--be-radius-sm);
    cursor: pointer;
    transition: border-color var(--be-transition-fast), background var(--be-transition-fast);
}
.be-payment-radio:hover {
    border-color: var(--be-brand);
}
.be-payment-radio input[type=radio] {
    accent-color: var(--be-brand);
}
.be-payment-radio__label {
    font-size: 14px;
    font-weight: 600;
    color: var(--be-text);
}
.be-payment-radio__desc {
    font-size: 12px;
    color: var(--be-text-muted);
}
.be-checkout-item { display: flex; justify-content: space-between; padding: 6px 0; font-size: 14px; }
.be-checkout-item__name { color: var(--be-text-secondary); }
.be-checkout-item__price { font-weight: 600; }
.be-cart-summary__divider { border-top: 1px solid var(--be-border-light); margin: 12px 0; }

/* ============================================================
   صفحة الدفع المخصّصة [be_checkout] — مقوّلة بتصميم be-checkout-wc
   (scoped: تخطيط عمودين + بطاقات + تركيز الحقول + أزرار + بوابات الدفع)
   ============================================================ */
.be-checkout-page {
    margin: 16px auto;
    padding: 0 20px;
}

/* عناوين الأقسام — مطابقة لـ be-checkout-wc h3 */
.be-checkout-page .be-page__subtitle {
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--be-border-light);
}

/* البطاقات — مطابقة لـ be-checkout-wc (padding 20px + shadow-sm + radius) */
.be-checkout-page .be-page__card {
    background: var(--be-bg-white);
    border-radius: var(--be-radius);
    padding: 20px;
    margin-bottom: 20px;
    box-shadow: var(--be-shadow-sm);
}

/* التخطيط الثنائي — مطابق لـ be-checkout-wc col2-set */
.be-checkout-page .be-page__grid2 {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 20px;
    align-items: start;
}

/* التسميات — مطابقة لـ be-checkout-wc */
.be-checkout-page .be-page__label {
    font-size: 13px;
    font-weight: 600;
    color: var(--be-text-secondary);
    margin-bottom: 6px;
}

/* حقول الإدخال — مطابقة لـ be-checkout-wc (focus + glow) */
.be-checkout-page .be-page__input {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid var(--be-border);
    border-radius: var(--be-radius);
    background: var(--be-bg-white);
    font-size: 14px;
    color: var(--be-text);
    outline: none;
    font-family: inherit;
    transition: border-color var(--be-transition-fast), box-shadow var(--be-transition-fast);
}
.be-checkout-page .be-page__input:focus {
    border-color: var(--be-brand);
    box-shadow: 0 0 0 3px var(--be-brand-light);
}
/* القوائم المنسدلة — سهم مخصّص مطابق لـ be-checkout-wc */
.be-checkout-page select.be-page__input {
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: left 14px center;
    padding-inline-end: 40px;
    cursor: pointer;
}
.be-checkout-page textarea.be-page__input {
    min-height: 80px;
    resize: vertical;
}

/* الكلاسة المطلوبة (*) — بدون حدود */
.be-checkout-page .be-req {
    color: var(--be-danger);
    text-decoration: none;
    border: none;
}

/* خانة اختيار عنوان الشحن = الفواتير */
.be-checkout-page .be-checkout-checkbox {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 14px;
    cursor: pointer;
    color: var(--be-text-secondary);
    margin: 4px 0;
}
.be-checkout-page .be-checkout-checkbox input[type=checkbox] {
    accent-color: var(--be-brand);
    width: 18px;
    height: 18px;
    margin-top: 2px;
}

/* حقل كود الخصم */
.be-checkout-page .be-checkout-coupon {
    display: flex;
    gap: 8px;
    margin: 4px 0 0;
}
.be-checkout-page .be-checkout-coupon .be-page__input {
    flex: 1;
}

/* شكل حقول النموذج — صف بعمودين للحقول القصيرة */
.be-checkout-page .be-checkout-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
.be-checkout-page .be-checkout-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.be-checkout-page .be-checkout-field--full {
    grid-column: 1 / -1;
}

/* قائمة بوابات الدفع — بطاقات قابلة للنقر مطابقة لـ be-checkout-wc */
.be-checkout-page .be-cart-payments {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--be-border-light);
}
.be-checkout-page .be-cart-payments__title {
    font-size: 13px;
    font-weight: 600;
    color: var(--be-text-secondary);
    margin: 0 0 10px;
}
.be-checkout-page .be-cart-payments__list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.be-checkout-page .be-payment-radio {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 14px 16px;
    border: 1px solid var(--be-border-light);
    border-radius: var(--be-radius-sm);
    background: var(--be-bg-gray);
    cursor: pointer;
    transition: border-color var(--be-transition-fast);
}
.be-checkout-page .be-payment-radio:hover {
    border-color: var(--be-brand);
}
.be-checkout-page .be-payment-radio input[type=radio] {
    accent-color: var(--be-brand);
    width: 18px;
    height: 18px;
    margin-top: 2px;
}
.be-checkout-page .be-payment-radio__label {
    font-size: 14px;
    font-weight: 600;
    color: var(--be-text);
}
.be-checkout-page .be-payment-radio__desc {
    font-size: 13px;
    color: var(--be-text-secondary);
    margin-top: 4px;
}

/* ملخص الطلب داخل العمود الجانبي — مطابق لـ be-checkout-wc #order_review */
.be-checkout-page .be-cart-summary__title {
    font-size: 16px;
    font-weight: 700;
    color: var(--be-text);
    margin: 0 0 12px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--be-border-light);
}
.be-checkout-page .be-checkout-item {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    font-size: 14px;
    border-bottom: 1px solid var(--be-border-light);
}
.be-checkout-page .be-checkout-item:last-of-type { border-bottom: none; }
.be-checkout-page .be-checkout-item__name { color: var(--be-text); }
.be-checkout-page .be-checkout-item__price {
    color: var(--be-brand);
    font-weight: 700;
}
.be-checkout-page .be-cart-summary__row {
    display: flex;
    justify-content: space-between;
    padding: 6px 0;
    font-size: 14px;
    color: var(--be-text-secondary);
}
.be-checkout-page .be-cart-summary__total {
    display: flex;
    justify-content: space-between;
    font-size: 16px;
    font-weight: 800;
    border-top: 2px solid var(--be-border-light);
    padding: 12px 0;
    margin-top: 12px;
}
.be-checkout-page .be-cart-summary__total b {
    color: var(--be-brand);
    font-size: 20px;
}

/* زر تأكيد الطلب — مطابق لـ #place_order في be-checkout-wc */
.be-checkout-page .be-checkout-submit {
    width: 100%;
    padding: 14px 24px;
    background: var(--be-brand);
    color: #fff;
    border: none;
    border-radius: var(--be-radius);
    font-size: 16px;
    font-weight: 700;
    font-family: inherit;
    cursor: pointer;
    transition: background var(--be-transition-fast), transform var(--be-transition-fast);
    box-shadow: var(--be-shadow-sm);
    margin-top: 8px;
    text-align: center;
}
.be-checkout-page .be-checkout-submit:hover {
    background: var(--be-brand-deep, var(--be-brand-hover));
    transform: translateY(-1px);
}
.be-checkout-page .be-checkout-submit:active { transform: translateY(0); }

/* كتلة تسجيل الدخول كضيف */
.be-checkout-page .be-checkout-auth {
    display: flex;
    align-items: center;
    gap: 16px;
}
.be-checkout-page .be-checkout-auth__info p {
    font-size: 14px;
    color: var(--be-text-secondary);
    margin: 4px 0 0;
}

/* Responsive — مطابق لـ be-checkout-wc */
@media (max-width: 1024px) {
    .be-checkout-page .be-page__grid2 {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 768px) {
    .be-checkout-page { padding: 0 12px; }
    .be-checkout-page .be-checkout-fields {
        grid-template-columns: 1fr;
    }
    .be-checkout-page .be-page__card { padding: 16px; }
}

/* ===== Account ===== */
.be-account-welcome { margin-bottom: 0; }
.be-account-links { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
.be-account-links a { padding: 8px 16px; border: 1px solid var(--be-border); border-radius: var(--be-radius); font-size: 14px; color: var(--be-text); text-decoration: none; }
.be-account-links a:hover { border-color: var(--be-brand); color: var(--be-brand); }
.be-account-orders { width: 100%; border-collapse: collapse; }
.be-account-orders th, .be-account-orders td { padding: 12px 16px; border-bottom: 1px solid var(--be-border-light); text-align: start; font-size: 14px; }
.be-account-orders th { background: var(--be-bg-gray); color: var(--be-text-secondary); }
.be-empty-text { color: var(--be-text-muted); margin-bottom: 16px; }
.be-auth-form { display: flex; flex-direction: column; gap: 12px; }

.be-auth-notices { margin-bottom: 16px; }
.be-auth-notices--cart { margin-bottom: 0; }
.be-auth-notice {
    padding: 12px 16px;
    border-radius: var(--be-radius);
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 8px;
}
.be-auth-notice--success {
    background: var(--be-success-light);
    color: var(--be-success);
    border-inline-start: 4px solid var(--be-success);
}
.be-auth-notice--error {
    background: var(--be-danger-light);
    color: var(--be-danger);
    border-inline-start: 4px solid var(--be-danger);
}
.be-auth-notice--info {
    background: var(--be-info-light);
    color: var(--be-info);
    border-inline-start: 4px solid var(--be-info);
}

/* ===== تبويبات المصادقة (دخول/تسجيل) ===== */
.be-account-auth {
    max-width: 480px;
    margin: 0 auto;
}
/* تخطيط جنباً إلى جنب — يُظهر النموذجين معاً */
.be-account-auth[data-layout="side"] {
    max-width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}
.be-account-auth[data-layout="side"] .be-auth-panel {
    display: block !important;
}
.be-account-auth[data-layout="side"] .be-auth-switch {
    display: none;
}

/* عنوان كل قسم */
.be-auth-section__title {
    font-size: 17px;
    font-weight: 700;
    color: var(--be-text);
    margin: 0 0 12px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--be-brand-light);
}

/* اللوحات */
.be-auth-panel { display: none; }
.be-auth-panel.is-active { display: block; animation: be-fade-in 0.2s ease; }
@keyframes be-fade-in {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

/* رابط التبديل بين النموذجين */
.be-auth-switch {
    text-align: center;
    margin-top: 16px;
    font-size: 14px;
    color: var(--be-text-secondary);
}
.be-auth-switch-link {
    color: var(--be-brand);
    font-weight: 700;
    text-decoration: none;
    margin-inline-start: 4px;
}
.be-auth-switch-link:hover {
    text-decoration: underline;
}

/* رابط نسيت كلمة المرور */
.be-auth-lost-pass {
    display: block;
    text-align: center;
    margin-top: 12px;
    font-size: 13px;
    color: var(--be-brand);
    text-decoration: none;
}
.be-auth-lost-pass:hover {
    text-decoration: underline;
}

/* ===== استعادة كلمة المرور: النموذج ورسالة التأكيد ===== */
.be-pw-reset-form,
.be-pw-reset-confirm {
    max-width: 480px;
    margin: 0 auto;
    padding: 28px 24px;
}
.be-pw-reset-form__text {
    color: var(--be-text-secondary);
    font-size: 14px;
    margin-bottom: 16px;
}
.be-pw-reset-confirm {
    text-align: center;
}
.be-pw-reset-confirm__icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 16px;
    background: var(--be-brand-light);
    color: var(--be-brand);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.be-pw-reset-confirm__title {
    font-size: 20px;
    font-weight: 800;
    color: var(--be-text);
    margin: 0 0 12px;
}
.be-pw-reset-confirm__text {
    color: var(--be-text-secondary);
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 12px;
}
.be-pw-reset-confirm__note {
    color: var(--be-text-muted);
    font-size: 13px;
    margin-bottom: 20px;
}
.be-pw-reset-confirm__actions {
    margin-top: 20px;
}

/* حاوية حقل كلمة المرور + زر إظهار/إخفاء */
.be-auth-input-wrap {
    position: relative;
    display: flex;
    align-items: center;
}
.be-auth-input-wrap .be-page__input {
    padding-inline-end: 44px;
}
.be-auth-toggle-pass {
    position: absolute;
    inset-inline-end: 8px;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    color: var(--be-text-muted);
    cursor: pointer;
    padding: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color var(--be-transition-fast);
}
.be-auth-toggle-pass:hover { color: var(--be-brand); }
.be-auth-toggle-pass.is-visible svg { stroke: var(--be-brand); }
.be-auth-toggle-pass svg { transition: stroke var(--be-transition-fast); }

/* صف الحقول المتجاورة (الاسم الأول + اسم العائلة) */
.be-auth-field-row {
    display: flex;
    gap: 12px;
    margin-bottom: 14px;
    flex-wrap: wrap;
}
.be-auth-field-row .be-checkout-field {
    flex: 1;
    margin-bottom: 0;
    min-width: 140px;
}

/* checkbox "تذكّرني" */
.be-auth-checkbox {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    cursor: pointer;
    color: var(--be-text-secondary);
    margin: 8px 0;
}
.be-auth-checkbox input[type="checkbox"] {
    accent-color: var(--be-brand);
    width: 18px;
    height: 18px;
}

/* تلميح تحت الحقل */
.be-auth-hint {
    font-size: 12px;
    color: var(--be-text-muted);
    margin: 4px 0 0;
}

/* استجابة الموبايل */
@media (max-width: 768px) {
    .be-account-auth[data-layout="side"] {
        grid-template-columns: 1fr;
    }
    .be-account-auth[data-layout="side"] .be-auth-switch {
        display: block;
    }
    /* على الجوال، حتى في تخطيط side، نعرض نموذجاً واحداً فقط */
    .be-account-auth[data-layout="side"] .be-auth-panel {
        display: none !important;
    }
    .be-account-auth[data-layout="side"] .be-auth-panel.is-active {
        display: block !important;
    }
    .be-auth-field-row { flex-direction: column; }
}

/* ===== Order Status Badges ===== */
.be-order-status { padding: 4px 12px; border-radius: var(--be-radius-pill); font-size: 12px; font-weight: 600; color: #fff; background: var(--be-text-muted); }
.be-order-status--pending { background: var(--be-warning); }
.be-order-status--processing { background: var(--be-info); }
.be-order-status--completed { background: var(--be-success); }
.be-order-status--cancelled, .be-order-status--refunded, .be-order-status--failed { background: var(--be-danger); }
.be-order-status--on-hold { background: #a855f7; }

/* ===== Account Tabs ===== */
.be-account { display: flex; flex-direction: column; gap: 16px; }
.be-account__tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    background: var(--be-bg-white);
    border: 1px solid var(--be-border);
    border-radius: var(--be-radius);
    padding: 6px;
    box-shadow: var(--be-shadow-sm);
    position: sticky;
    top: 0;
    z-index: 10;
}
.be-account__tab {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    border: none;
    border-radius: var(--be-radius-sm);
    background: transparent;
    color: var(--be-text-secondary);
    font-size: 14px;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
    transition: background var(--be-transition-fast), color var(--be-transition-fast);
    text-decoration: none;
    white-space: nowrap;
}
.be-account__tab:hover {
    background: var(--be-bg-gray);
    color: var(--be-text);
}
.be-account__tab.is-active {
    background: var(--be-brand);
    color: #fff;
}
.be-account__tab.is-active svg { stroke: #fff; }
.be-account__tab svg { stroke: var(--be-text-secondary); flex-shrink: 0; }
.be-account__tab--link { margin-inline-start: auto; }
.be-account__tab--link:hover { background: var(--be-danger-light); color: var(--be-danger); }
.be-account__tab--link:hover svg { stroke: var(--be-danger); }

.be-account__panels { min-height: 300px; }
.be-account__panel { display: none; flex-direction: column; gap: 16px; }
.be-account__panel.is-active { display: flex; animation: be-fade-in 0.2s ease; }

@keyframes be-fade-in {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

/* بطاقة اللوحة: ترحيب + إحصاءات */
.be-account-welcome { margin-bottom: 0; }
.be-account__email { color: var(--be-text-muted); font-size: 14px; margin-top: 4px; }
.be-account__stats {
    display: flex;
    gap: 16px;
    margin-top: 20px;
    flex-wrap: wrap;
}
.be-account__stat {
    flex: 1;
    min-width: 140px;
    background: var(--be-bg-gray);
    border-radius: var(--be-radius);
    padding: 16px;
    text-align: center;
}
.be-account__stat-num {
    display: block;
    font-size: 22px;
    font-weight: 800;
    color: var(--be-brand);
    margin-bottom: 4px;
}
.be-account__stat-label {
    display: block;
    font-size: 13px;
    color: var(--be-text-secondary);
}

/* قائمة الطلبات المفصّلة */
.be-account-orders-list { display: flex; flex-direction: column; gap: 12px; }
.be-account-order {
    border: 1px solid var(--be-border-light);
    border-radius: var(--be-radius);
    padding: 14px;
    transition: border-color var(--be-transition-fast);
}
.be-account-order:hover { border-color: var(--be-brand); }
.be-account-order__head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 10px;
}
.be-account-order__head > div { display: flex; align-items: center; gap: 8px; }
.be-account-order__id { font-weight: 700; font-size: 15px; }
.be-account-order__date { font-size: 13px; color: var(--be-text-muted); }
.be-account-order__items { display: flex; flex-direction: column; gap: 6px; margin-bottom: 10px; }
.be-account-order__item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    padding: 4px 0;
    border-bottom: 1px dashed var(--be-border-light);
}
.be-account-order__item:last-child { border-bottom: none; }
.be-account-order__item-name { color: var(--be-text); }
.be-account-order__item-qty { color: var(--be-text-muted); font-weight: 600; }
.be-account-order__foot { display: flex; justify-content: flex-end; padding-top: 8px; border-top: 1px solid var(--be-border-light); }
.be-account-order__total { font-size: 14px; color: var(--be-text); }
.be-account-order__total b { color: var(--be-brand); font-size: 16px; }

/* فاصل في نموذج تفاصيل الحساب */
.be-account__divider {
    text-align: center;
    font-size: 13px;
    color: var(--be-text-muted);
    margin: 8px 0;
    position: relative;
}
.be-account__divider::before,
.be-account__divider::after {
    content: '';
    position: absolute;
    top: 50%;
    width: calc(50% - 24px);
    height: 1px;
    background: var(--be-border-light);
}
.be-account__divider::before { inset-inline-start: 0; }
.be-account__divider::after { inset-inline-end: 0; }

.be-address-form { gap: 12px; }

/* ترقيم قائمة الطلبات */
.be-account__pager {
    display: flex;
    justify-content: center;
    gap: 4px;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--be-border-light);
    flex-wrap: wrap;
}
.be-account__pg {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    border: 1px solid var(--be-border);
    border-radius: var(--be-radius-sm);
    background: var(--be-bg-white);
    color: var(--be-text);
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: border-color var(--be-transition-fast), background var(--be-transition-fast);
}
.be-account__pg:hover { border-color: var(--be-brand); color: var(--be-brand); }
.be-account__pg.is-current {
    background: var(--be-brand);
    border-color: var(--be-brand);
    color: #fff;
}

/* ===== جدول الطلبات الجديد ===== */
.be-account-orders-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 16px;
}
.be-account-orders-table th {
    background: var(--be-bg-gray);
    color: var(--be-text-secondary);
    font-weight: 600;
    font-size: 13px;
    text-align: start;
    padding: 12px 14px;
    border-bottom: 2px solid var(--be-border);
}
.be-account-orders-table td {
    padding: 12px 14px;
    border-bottom: 1px solid var(--be-border-light);
    font-size: 14px;
    vertical-align: middle;
}
.be-account-orders-table tbody tr:last-child td { border-bottom: none; }
.be-account-orders-table tbody tr:hover { background: var(--be-bg-soft); }
.be-orders-table__id { font-weight: 700; color: var(--be-brand); }
.be-orders-table__id a {
    color: var(--be-brand);
    text-decoration: none;
    transition: opacity var(--be-transition-fast);
}
.be-orders-table__id a:hover { opacity: 0.75; text-decoration: underline; }
.be-orders-table__items-count { font-size: 12px; color: var(--be-text-muted); display: block; }
.be-orders-table__actions {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}
.be-orders-table__action {
    display: inline-block;
    padding: 6px 14px;
    border: 1px solid var(--be-border);
    border-radius: var(--be-radius-sm);
    background: var(--be-bg-white);
    color: var(--be-text) !important;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: all var(--be-transition-fast);
    box-shadow: none;
    text-align: center;
}
.be-orders-table__action--view:hover {
    border-color: var(--be-brand);
    color: var(--be-brand) !important;
    background: var(--be-brand-light);
}
.be-orders-table__action--track {
    color: var(--be-info, #2271b1) !important;
    border-color: var(--be-info, #2271b1);
}
.be-orders-table__action--track:hover {
    background: var(--be-info, #2271b1);
    color: #fff !important;
}
.be-orders-table__action--cancel { color: var(--be-danger) !important; border-color: var(--be-danger); }
.be-orders-table__action--cancel:hover { background: var(--be-danger); color: #fff !important; }

/* ===== صفحة عرض الطلب التفصيلية ===== */
.be-account-order-view-head { margin-bottom: 16px; }
.be-account-order-view-back {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--be-brand);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
}
.be-account-order-view-back:hover { text-decoration: underline; }
.be-account-order-view-title {
    font-size: 16px;
    color: var(--be-text);
    background: var(--be-bg-gray);
    padding: 14px 16px;
    border-radius: var(--be-radius);
    margin: 0 0 20px;
    line-height: 1.8;
}
.be-account-order-view-title .be-order-status { margin-inline-start: 6px; vertical-align: middle; }

.be-account-order-details {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}
.be-account-order-details th {
    background: var(--be-bg-gray);
    color: var(--be-text-secondary);
    font-weight: 600;
    font-size: 13px;
    padding: 10px 14px;
    text-align: start;
    border-bottom: 1px solid var(--be-border);
}
.be-account-order-details td {
    padding: 12px 14px;
    border-bottom: 1px solid var(--be-border-light);
    font-size: 14px;
    vertical-align: top;
}
.be-account-order-details__total-col { text-align: end; white-space: nowrap; }
.be-account-order-item {
    display: flex;
    align-items: center;
    gap: 12px;
}
.be-account-order-item-thumb {
    flex-shrink: 0;
    display: block;
    width: 60px;
    height: 60px;
    border-radius: var(--be-radius-sm);
    overflow: hidden;
    border: 1px solid var(--be-border-light);
    background: var(--be-bg-gray);
}
.be-account-order-item-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.be-account-order-item-info {
    flex: 1;
    min-width: 0;
}
.be-account-order-item-name {
    font-weight: 600;
    color: var(--be-text);
    margin-bottom: 2px;
    text-decoration: none;
    display: inline-block;
    transition: color var(--be-transition);
}
.be-account-order-item-name:hover { color: var(--be-brand); }
.be-account-order-item-qty {
    font-size: 13px;
    color: var(--be-text-secondary);
    display: inline-block;
    margin-inline-start: 4px;
}
.be-account-order-item-vendor { font-size: 12px; color: var(--be-text-muted); }
.be-account-order-details tfoot th {
    background: transparent;
    font-weight: 600;
    color: var(--be-text-secondary);
    border-bottom: 1px solid var(--be-border-light);
}
.be-account-order-grand-total th {
    background: var(--be-brand-light);
    font-size: 15px;
    font-weight: 800;
    color: var(--be-brand);
    border-bottom: none !important;
}
.be-account-order-grand-total td {
    background: var(--be-brand-light);
    font-size: 16px;
    font-weight: 800;
    color: var(--be-brand);
    border-bottom: none !important;
}

.be-account-order-meta {
    background: var(--be-bg-gray);
    padding: 14px 16px;
    border-radius: var(--be-radius);
    margin-bottom: 20px;
}
.be-account-order-meta p { margin: 4px 0; font-size: 14px; color: var(--be-text); }

.be-account-order-addresses {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 20px;
}
.be-account-order-address-block {
    background: var(--be-bg-white);
    border: 1px solid var(--be-border-light);
    border-radius: var(--be-radius);
    padding: 16px;
}
.be-account-order-address-block h4 {
    margin: 0 0 10px;
    font-size: 14px;
    font-weight: 700;
    color: var(--be-text);
    padding-bottom: 8px;
    border-bottom: 1px solid var(--be-border-light);
}
.be-account-order-address-block address {
    font-style: normal;
    font-size: 13px;
    color: var(--be-text-secondary);
    line-height: 1.8;
    margin: 0;
}
.be-account-order-view-actions {
    display: flex;
    gap: 12px;
    padding-top: 16px;
    border-top: 1px solid var(--be-border-light);
}

/* ===== الكوبونات ===== */
.be-account-coupons-section { margin-bottom: 24px; }
.be-account-coupons-section:last-child { margin-bottom: 0; }
.be-account-coupons-section-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--be-text);
    margin: 0 0 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--be-border-light);
}
.be-account-coupons-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 16px;
}
.be-account-coupon {
    position: relative;
    background: var(--be-bg-white);
    border: 2px dashed var(--be-border);
    border-radius: var(--be-radius);
    padding: 16px;
    overflow: hidden;
    transition: border-color var(--be-transition-fast), transform var(--be-transition-fast);
}
.be-account-coupon:hover { transform: translateY(-2px); }
.be-account-coupon--available { border-color: var(--be-brand); }
.be-account-coupon--available:hover { border-color: var(--be-brand-deep); box-shadow: var(--be-shadow-sm); }
.be-account-coupon--used { opacity: 0.6; border-style: solid; border-color: var(--be-border); }
.be-account-coupon--expired { opacity: 0.5; border-color: var(--be-danger); }
.be-account-coupon__code {
    font-size: 17px;
    font-weight: 800;
    color: var(--be-brand);
    margin-bottom: 8px;
    letter-spacing: 1px;
    font-family: 'Courier New', monospace;
}
.be-account-coupon--used .be-account-coupon__code,
.be-account-coupon--expired .be-account-coupon__code { color: var(--be-text-muted); text-decoration: line-through; }
.be-account-coupon__discount {
    font-size: 24px;
    font-weight: 800;
    color: var(--be-text);
    margin-bottom: 12px;
}
.be-account-coupon__discount-label {
    display: block;
    font-size: 12px;
    font-weight: 500;
    color: var(--be-text-muted);
}
.be-account-coupon__details { border-top: 1px solid var(--be-border-light); padding-top: 10px; }
.be-account-coupon__desc { font-size: 13px; color: var(--be-text); margin: 0 0 6px; }
.be-account-coupon__meta { font-size: 12px; color: var(--be-text-muted); margin: 2px 0; }

@media (max-width: 768px) {
    .be-account-orders-table thead { display: none; }
    .be-account-orders-table, .be-account-orders-table tbody, .be-account-orders-table tr, .be-account-orders-table td {
        display: block; width: 100%;
    }
    .be-account-orders-table tr {
        border: 1px solid var(--be-border);
        border-radius: var(--be-radius);
        padding: 8px;
        margin-bottom: 10px;
        background: var(--be-bg-white);
        position: relative;
    }
    .be-account-orders-table td {
        border: none; padding: 4px 8px; text-align: start;
    }
    .be-account-orders-table td::before {
        content: attr(data-label) ': '; font-weight: 600; font-size: 12px; color: var(--be-text-secondary);
    }
    .be-orders-table__actions { justify-content: center; margin-top: 8px; }
    .be-account-order-addresses { grid-template-columns: 1fr; }
    .be-account-coupons-grid { grid-template-columns: 1fr; }
}

/* ===== 404 ===== */
.be-error404 { text-align: center; padding: 60px 20px; }
.be-error404__code { font-size: 80px; font-weight: 800; color: var(--be-brand); line-height: 1; margin-bottom: 8px; }
.be-error404__title { font-size: 24px; font-weight: 800; margin: 0 0 8px; }
.be-error404__text { font-size: 15px; color: var(--be-text-secondary); margin: 0 0 24px; max-width: 400px; margin-inline: auto; }
.be-error404__actions { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }

/* ===== Search ===== */
/* Fix Elementor container overflow in RTL (forces centering inside oversized containers) */
.elementor-widget-shortcode,
.elementor-element > .elementor-widget-container > .be-page,
.elementor-widget-shortcode .be-page,
.elementor-widget-shortcode > div > .be-page {
    margin-inline: auto;
    width: 100%;
    max-width: var(--be-container, 1370px);
    box-sizing: border-box;
}
.elementor-widget-shortcode {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
/* Target Elementor containers that wrap our shortcode */
.elementor-element:has(.be-page) {
    justify-content: center !important;
}
.be-page {
    margin-inline: auto;
}

.be-search-count { font-size: 14px; color: var(--be-text-secondary); margin-bottom: 16px; }
.be-search-grid { display: grid; gap: 12px; }

/* ===== Thank You Page ===== */
.be-thankyou { text-align: center; padding: 40px 20px; }
.be-thankyou__icon {
    color: var(--be-success);
    margin-bottom: 20px;
}
.be-thankyou__icon svg { display: block; margin: 0 auto; }
.be-thankyou__title { font-size: 24px; font-weight: 800; margin: 0 0 12px; color: var(--be-text); }
.be-thankyou__text { font-size: 15px; color: var(--be-text-secondary); margin: 0 0 28px; max-width: 400px; margin-inline: auto; }
.be-thankyou__order-info {
    background: var(--be-bg-gray);
    border-radius: var(--be-radius);
    padding: 20px;
    margin-bottom: 20px;
    text-align: start;
}
.be-thankyou__customer {
    text-align: start;
    margin-bottom: 24px;
}
.be-thankyou__subtitle { font-size: 16px; font-weight: 700; margin: 0 0 12px; color: var(--be-text); }
.be-thankyou__order-row {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    border-bottom: 1px solid var(--be-border-light);
    font-size: 14px;
}
.be-thankyou__order-row:last-child { border-bottom: none; }
.be-thankyou__label { color: var(--be-text-secondary); }
.be-thankyou__value { font-weight: 600; color: var(--be-text); }
.be-thankyou__value--brand { color: var(--be-brand); font-weight: 800; }
.be-thankyou__actions {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 24px;
}

/* ===== Track ===== */
.be-track-form { display: flex; flex-direction: column; gap: 12px; }
.be-track-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; }
.be-track-header h3 { font-size: 18px; font-weight: 700; margin: 0; }
.be-track-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 20px; }
.be-track-meta-label { font-size: 12px; color: var(--be-text-muted); margin-bottom: 4px; }
.be-track-meta-value { font-size: 14px; font-weight: 600; }
.be-track-meta-value--brand { color: var(--be-brand); }
.be-track-items { border-top: 1px solid var(--be-border-light); padding-top: 12px; }
.be-track-items h4 { font-size: 14px; font-weight: 700; margin: 0 0 10px; }
.be-track-item { display: flex; justify-content: space-between; padding: 6px 0; font-size: 14px; }

/* ===== Responsive Pages ===== */
@media (max-width: 768px) {
    .be-page__grid2 { grid-template-columns: 1fr; }
    .be-page { padding: 12px; }
    .be-page__card { padding: 16px; }
    .be-checkout-fields { grid-template-columns: 1fr; }
    .be-cart-table thead { display: none; }
    .be-cart-table, .be-cart-table tbody, .be-cart-table tr, .be-cart-table td { display: block; width: 100%; }
    .be-cart-table tr { border-bottom: 2px solid var(--be-border); padding: 12px 0; }
    .be-cart-table td { border: none; text-align: start; padding: 6px 0; }
    .be-cart-table td::before { content: attr(data-label) ': '; font-weight: 600; font-size: 12px; }
    .be-track-meta { grid-template-columns: 1fr; }
    /* تبويبات الحساب على الموبايل: قائمة قابلة للتمرير الأفقي */
    .be-account__tabs {
        position: static;
        overflow-x: auto;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
    }
    .be-account__tabs::-webkit-scrollbar { display: none; }
    .be-account__tab { flex: 0 0 auto; padding: 8px 12px; font-size: 13px; }
    .be-account__tab--link { margin-inline-start: 0; }
    .be-account__stats { flex-direction: column; }
    .be-account-order__head { flex-direction: column; align-items: flex-start; }
}

/* ===== Category Grid (be-catgrid) — مشتركة بين الرئيسية وصفحة المتجر ===== */
.be-catgrid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(var(--be-cg-min, 120px), 1fr));
    gap: var(--be-cg-gap, 12px);
}
.be-catgrid--carousel {
    display: flex;
    overflow-x: auto;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    gap: var(--be-cg-gap, 8px);
    padding-bottom: 8px;
    flex: 1;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.be-catgrid--carousel::-webkit-scrollbar { display: none; }
.be-catgrid__carousel-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
    position: relative;
}
.be-catgrid__arrow {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    background: transparent;
    color: var(--be-text-secondary);
    cursor: pointer;
    transition: color var(--be-transition), opacity var(--be-transition), background var(--be-transition);
    border: none;
    padding: 0;
    z-index: 5;
}
.be-catgrid__arrow svg { width: 24px; height: 24px; display: block; }
.be-catgrid__arrow:hover { background: var(--be-brand); color: #fff; border-color: var(--be-brand); }
.be-catgrid__arrow:disabled,
.be-catgrid__arrow.is-disabled { opacity: 0.3; cursor: default; pointer-events: none; }
.be-catgrid__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 12px;
    background: var(--be-bg-white);
    border-radius: var(--be-radius);
    box-shadow: var(--be-shadow-sm);
    text-decoration: none;
    transition: box-shadow var(--be-transition), transform var(--be-transition);
}
.be-catgrid__item:hover {
    box-shadow: var(--be-shadow);
    transform: translateY(-2px);
}
.be-catgrid__img {
    width: var(--be-cg-img, 64px);
    height: var(--be-cg-img, 64px);
    border-radius: 50%;
    overflow: hidden;
    background: var(--be-bg-gray);
    display: flex;
    align-items: center;
    justify-content: center;
}
.be-catgrid__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}
.be-catgrid__placeholder {
    font-size: calc(var(--be-cg-img, 64px) * 0.5);
    font-weight: 800;
    color: var(--be-brand);
}
.be-catgrid__name {
    font-size: var(--be-cg-font, 16px);
    font-weight: 600;
    color: var(--be-text);
    text-align: center;
}
.be-catgrid__count {
    font-size: 11px;
    color: var(--be-text-muted);
}

/* ===== Language Switcher (مستقل) ===== */
.be-lang-switcher { position: relative; display: inline-block; }
.be-lang-switcher__btn {
    display: inline-flex; align-items: center; gap: 6px;
    background: transparent; border: 1px solid var(--be-border);
    border-radius: var(--be-radius); padding: 6px 12px;
    cursor: pointer; font-family: inherit; color: var(--be-text);
    font-size: 13px; transition: border-color var(--be-transition-fast);
}
.be-lang-switcher__btn:hover { border-color: var(--be-brand); }
.be-lang-switcher__flag { font-size: 16px; line-height: 1; }
.be-lang-switcher__arrow { opacity: 0.6; }
.be-lang-switcher__dropdown {
    display: none; position: absolute; top: calc(100% + 4px); inset-inline-end: 0;
    background: var(--be-bg-white); border: 1px solid var(--be-border);
    border-radius: var(--be-radius); box-shadow: var(--be-shadow);
    list-style: none; margin: 0; padding: 4px; min-width: 140px; z-index: 1000;
}
.be-lang-switcher.is-open .be-lang-switcher__dropdown { display: block; }
.be-lang-switcher__dropdown li { margin: 0; }
.be-lang-switcher__dropdown a {
    display: flex; align-items: center; gap: 8px; padding: 8px 10px;
    color: var(--be-text); text-decoration: none; border-radius: var(--be-radius-sm);
    font-size: 13px; transition: background var(--be-transition-fast);
}
.be-lang-switcher__dropdown a:hover { background: var(--be-bg-gray); }
.be-lang-switcher__dropdown li.is-active a { background: var(--be-brand-light); color: var(--be-brand); font-weight: 600; }

/* ===== إشعارات WooCommerce الموحّدة (كل صفحاتنا: be-page + be-product-wrapper + be-account-auth) ===== */
/* تُطبّق على: السلة، الدفع، الحساب، صفحة المنتج */
.be-page .woocommerce-notices-wrapper,
.be-product-wrapper .woocommerce-notices-wrapper,
.be-account-auth .woocommerce-notices-wrapper { margin-bottom: 16px; }
.be-page .woocommerce-message,
.be-product-wrapper .woocommerce-message,
.be-account-auth .woocommerce-message,
.be-page .woocommerce-info,
.be-product-wrapper .woocommerce-info,
.be-account-auth .woocommerce-info,
.be-page .woocommerce-error,
.be-product-wrapper .woocommerce-error,
.be-account-auth .woocommerce-error {
    border-radius: var(--be-radius);
    padding: 12px 16px 12px 44px !important;
    font-size: 14px;
    margin: 0 0 12px !important;
    list-style: none;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    position: relative;
    line-height: 1.6;
    border: 1px solid transparent;
}
/* أيقونة قبل النص */
.be-page .woocommerce-message::before,
.be-product-wrapper .woocommerce-message::before,
.be-account-auth .woocommerce-message::before,
.be-page .woocommerce-info::before,
.be-product-wrapper .woocommerce-info::before,
.be-account-auth .woocommerce-info::before,
.be-page .woocommerce-error::before {
    content: '';
    position: absolute;
    inset-inline-start: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    background-repeat: no-repeat;
    background-position: center;
    /* أيقونة معلومات افتراضية */
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='16' x2='12' y2='12'/%3E%3Ccircle cx='12' cy='8' r='0.5' fill='currentColor'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='16' x2='12' y2='12'/%3E%3Ccircle cx='12' cy='8' r='0.5' fill='currentColor'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* نجاح: أخضر */
.be-page .woocommerce-message {
    background: #ecfdf5;
    color: #065f46;
    border-color: #a7f3d0;
}
.be-page .woocommerce-message::before {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 11.08V12a10 10 0 1 1-5.93-9.14'/%3E%3Cpolyline points='22 4 12 14.01 9 11.01'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 11.08V12a10 10 0 1 1-5.93-9.14'/%3E%3Cpolyline points='22 4 12 14.01 9 11.01'/%3E%3C/svg%3E") center / contain no-repeat;
    background-color: #065f46;
}

/* معلومات: أزرق فاتح */
.be-page .woocommerce-info {
    background: #eff6ff;
    color: #1e40af;
    border-color: #bfdbfe;
}
.be-page .woocommerce-info::before { background-color: #1e40af; }

/* خطأ: أحمر */
.be-page .woocommerce-error {
    background: #fef2f2;
    color: #991b1b;
    border-color: #fecaca;
}
.be-page .woocommerce-error::before {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='8' x2='12' y2='12'/%3E%3Ccircle cx='12' cy='16' r='0.5' fill='currentColor'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='8' x2='12' y2='12'/%3E%3Ccircle cx='12' cy='16' r='0.5' fill='currentColor'/%3E%3C/svg%3E") center / contain no-repeat;
    background-color: #991b1b;
}

/* الروابط داخل الإشعارات */
.be-page .woocommerce-message a,
.be-product-wrapper .woocommerce-message a,
.be-account-auth .woocommerce-message a,
.be-page .woocommerce-info a,
.be-product-wrapper .woocommerce-info a,
.be-account-auth .woocommerce-info a,
.be-page .woocommerce-error a {
    color: inherit;
    font-weight: 700;
    text-decoration: none;
    border-bottom: 1.5px solid currentColor;
    padding-bottom: 1px;
}
.be-page .woocommerce-message a:hover,
.be-page .woocommerce-info a:hover,
.be-page .woocommerce-error a:hover {
    opacity: 0.8;
}

/* أزرار toggle: تسجيل الدخول + كوبون الخصم (woocommerce-form-login-toggle / coupon-toggle) */
.be-page .woocommerce-form-login-toggle,
.be-product-wrapper .woocommerce-form-login-toggle,
.be-account-auth .woocommerce-form-login-toggle,
.be-page .woocommerce-form-coupon-toggle {
    margin: 0 0 12px;
}
.be-page .woocommerce-form-login-toggle .woocommerce-info,
.be-page .woocommerce-form-coupon-toggle .woocommerce-info {
    cursor: pointer;
    transition: background var(--be-transition-fast), border-color var(--be-transition-fast);
}
.be-page .woocommerce-form-login-toggle .woocommerce-info:hover,
.be-page .woocommerce-form-coupon-toggle .woocommerce-info:hover {
    background: #dbeafe;
    border-color: #93c5fd;
}
.be-page .woocommerce-form-login-toggle .woocommerce-info .showlogin,
.be-page .woocommerce-form-coupon-toggle .woocommerce-info .showcoupon {
    color: var(--be-brand);
    font-weight: 700;
    text-decoration: none;
    border-bottom: none;
    margin-inline-start: 4px;
}
.be-page .woocommerce-form-login-toggle .woocommerce-info .showlogin:hover,
.be-page .woocommerce-form-coupon-toggle .woocommerce-info .showcoupon:hover {
    text-decoration: underline;
}

/* زر "تطبيق كود الخصم" في الدفع */
.be-page .woocommerce-form-coupon button[type="submit"],
.be-page .woocommerce-form-coupon .button {
    background: var(--be-brand);
    color: #fff;
    border: none;
    border-radius: var(--be-radius-sm);
    padding: 8px 18px;
    font-size: 13px;
    font-weight: 700;
    font-family: inherit;
    cursor: pointer;
    transition: background var(--be-transition-fast);
}
.be-page .woocommerce-form-coupon button[type="submit"]:hover,
.be-page .woocommerce-form-coupon .button:hover {
    background: var(--be-brand-deep, var(--be-brand));
}

/* رسائل Toast العائمة (BE.toast) — إن لم تُنسَّق في مكان آخر */
.be-toast {
    position: fixed;
    bottom: 24px;
    inset-inline-start: 50%;
    transform: translateX(-50%);
    z-index: 9999;
    padding: 12px 24px;
    border-radius: var(--be-radius-pill);
    font-size: 14px;
    font-weight: 600;
    color: #fff;
    box-shadow: 0 8px 24px rgba(0,0,0,0.18);
    opacity: 0;
    transition: opacity 0.25s ease, transform 0.25s ease;
    pointer-events: none;
    max-width: 90vw;
}
.be-toast.is-visible {
    opacity: 1;
    transform: translateX(-50%) translateY(-4px);
}
.be-toast--success { background: var(--be-success, #00a32a); }
.be-toast--error { background: var(--be-danger, #dc3232); }
.be-toast--info { background: var(--be-info, #2271b1); }
