@import url("Fontiran.css");


body, span, .ant-card-head, .ant-card-head-wrapper, .ant-card-head-title, .ant-card, .ant-divider-inner-text {
    font-family: IRANSansX !important;
}

.ant-divider-inner-text {
    font-weight: bold;
}

.input-price input {
    direction: ltr !important;
    text-align: left !important;
}

.fa-num {
    -moz-font-feature-settings: "ss01";
    -webkit-font-feature-settings: "ss01";
    font-feature-settings: "ss01";
}

.rtl input, .rtl span, .rtl div, .rtl p, .rtl h1, .rtl h2, .rtl h3, .rtl h4, .rtl h5, .rtl h6, .rtl button,
.rtl .ant-input-number-input-wrap input,
.rtl .ant-input,
.rtl span.ant-select-selection-item,
.rtl div.ant-select-item-option-content,
.rtl.ant-select-dropdown,
.rtl .ant-select-item-option-content,
.rtl .ant-select-selection-search input {
    -moz-font-feature-settings: "ss01" !important;
    -webkit-font-feature-settings: "ss01" !important;
    font-feature-settings: "ss01" !important;
}

*.hidden {
    display: none !important;
}

@-webkit-keyframes uil-ring-anim {
    0% {
        -ms-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -ms-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@-webkit-keyframes uil-ring-anim {
    0% {
        -ms-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -ms-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@-moz-keyframes uil-ring-anim {
    0% {
        -ms-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -ms-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@-ms-keyframes uil-ring-anim {
    0% {
        -ms-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -ms-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@-moz-keyframes uil-ring-anim {
    0% {
        -ms-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -ms-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@-webkit-keyframes uil-ring-anim {
    0% {
        -ms-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -ms-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@-o-keyframes uil-ring-anim {
    0% {
        -ms-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -ms-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes uil-ring-anim {
    0% {
        -ms-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -ms-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

.uil-ring-css {
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 200px;
    height: 200px;
}

    .uil-ring-css > div {
        position: absolute;
        display: block;
        width: 160px;
        height: 160px;
        top: 20px;
        left: 20px;
        border-radius: 80px;
        box-shadow: 0 6px 0 0 #ffffff;
        -ms-animation: uil-ring-anim 1s linear infinite;
        -moz-animation: uil-ring-anim 1s linear infinite;
        -webkit-animation: uil-ring-anim 1s linear infinite;
        -o-animation: uil-ring-anim 1s linear infinite;
        animation: uil-ring-anim 1s linear infinite;
    }



.e-toolbar .e-tbar-btn .e-tbar-btn-text, 
.e-splitter.e-splitter-horizontal .e-pane, 
.e-splitter.e-splitter-vertical .e-pane, 
.e-control, 
.e-css, 
.sf-license-warning, 
.e-error {
    font-family: IRANSans !important;
}





#realshop-add-to-cart {
    display: block;
    margin: 20px auto;
    padding: 10px 30px;
    background-color: #eee;
    border: solid #ccc 1px;
    cursor: pointer;
}

#overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    width: 100%;
    height: 100%;
    display: none;
    background: rgba(0,0,0,0.6);
}

.cv-spinner {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.spinner {
    width: 40px;
    height: 40px;
    border: 4px #ddd solid;
    border-top: 4px #2e93e6 solid;
    border-radius: 50%;
    animation: sp-anime 0.8s infinite linear;
}

@keyframes sp-anime {
    100% {
        transform: rotate(360deg);
    }
}

.is-hide {
    display: none;
}

.default-address {
    background-color: #f9f9f9 !important;
    border: 1px solid #edecec;
    border-radius: 5px;
    padding:5px !important;
}

.attribute-list .check-box-item {
    width: 100%;
    font-size:12px;
}


/*.realshop-loading.active {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99999;
    background-color: rgb(255 255 255 / 7%);
}*/










.realshop-loader-wrapper {
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.1);
    right: 0;
    top: 0;
    z-index: -1;
    opacity: 0;
    transition: all ease-in-out 0.4s;
    position: absolute;
    backdrop-filter: blur(3px);
}

.realshop-loading.active .realshop-loader-wrapper {
    z-index: 222;
    opacity: 1
}

.sh-loading {
    width: 48px;
    height: 48px;
    border: 10px solid #FFF;
    border-radius: 50%;
    position: relative;
    transform: rotate(45deg);
    box-sizing: border-box;
}

.sh-loading::before {
    content: "";
    position: absolute;
    box-sizing: border-box;
    inset: -10px;
    border-radius: 50%;
    border: 10px solid #FF3D00;
    animation: prixClipFix 2s infinite linear;
}


@keyframes prixClipFix {
    0% {
        clip-path: polygon(50% 50%, 0 0, 0 0, 0 0, 0 0, 0 0)
    }

    25% {
        clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 0, 100% 0, 100% 0)
    }

    50% {
        clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 100% 100%, 100% 100%)
    }

    75% {
        clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 100%)
    }

    100% {
        clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 0)
    }
}




.rs-loader-bars {
    width: 8px;
    height: 40px;
    border-radius: 4px;
    display: block;
    margin: 20px auto;
    position: relative;
    background: currentColor;
    color: rgba(0,0,0,0.6);
    box-sizing: border-box;
    animation: rsanimloader 0.3s 0.3s linear infinite alternate;
}

    .rs-loader-bars::after, .rs-loader-bars::before {
        content: '';
        width: 8px;
        height: 40px;
        border-radius: 4px;
        background: currentColor;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        left: 20px;
        box-sizing: border-box;
        animation: rsanimloader 0.3s 0.45s linear infinite alternate;
    }

    .rs-loader-bars::before {
        left: -20px;
        animation-delay: 0s;
    }

@keyframes rsanimloader {
    0% {
        height: 48px
    }

    100% {
        height: 4px
    }
}






/* تنظیمات پایه برای کانتینر اصلی */
.store-main {
    display: flex; /* فعال‌سازی فلکس‌باکس برای چیدمان */
    width: 100%; /* عرض کامل صفحه */
    max-width: 1200px; /* حداکثر عرض (قابل تنظیم) */
    margin: 0 auto; /* قرارگیری در مرکز صفحه */
    gap: 20px; /* فاصله بین دو ستون (قابل تنظیم) */
    flex-wrap: wrap; /* اجازه به شکستن خط در صفحات کوچک‌تر */
}

/* تنظیمات کلی برای پنل‌ها */
.store-panel-filter,
.store-panel-main {
    padding: 15px; /* کمی پدینگ داخلی */
    border-radius: 8px; /* گوشه‌های گرد */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* سایه ملایم */
    /* رنگ‌های پس‌زمینه مثال: */
    background-color: #f9f9f9; /* رنگ پس‌زمینه برای فیلتر */
}

/* تنظیمات دسکتاپ (پیش‌فرض: فیلتر در چپ/راست و محتوای اصلی در کنار آن) */
/* store-panel-filter حدود 25% و store-panel-main حدود 75% */
.store-panel-filter {
    flex: 0 0 350px; /* عرض ثابت 250 پیکسل، بدون امکان کوچک شدن/بزرگ شدن */
    /* یا */
    /* flex: 0 0 25%; */ /* اگر می‌خواهید عرض درصدی باشد */
    order: 1; /* ترتیب پیش‌فرض در دسکتاپ */
}

.store-panel-main {
    flex: 1; /* اشغال فضای باقی‌مانده */
    min-width: 300px; /* حداقل عرض برای محتوای اصلی */
    order: 2; /* ترتیب پیش‌فرض در دسکتاپ */
}

/* -------------------------------------------------------------------------- */
/* مدیای کوئری برای موبایل و تبلت (صفحاتی با حداکثر عرض 768 پیکسل) */
/* -------------------------------------------------------------------------- */
@media (max-width: 768px) {
    .store-main {
        flex-direction: column; /* چیدن آیتم‌ها زیر هم (ستون) */
        gap: 10px; /* کاهش فاصله بین آیتم‌ها */
        padding: 10px; /* اضافه کردن پدینگ در اطراف برای موبایل */
    }

    /* در موبایل، هر دو پنل باید تمام عرض را بگیرند */
    .store-panel-filter,
    .store-panel-main {
        flex: 1 1 100%; /* اشغال عرض کامل */
    }

    /* **مهم: تغییر ترتیب نمایش برای موبایل و تبلت** */
    /* فیلتر باید در بالا (Order 1) و محتوای اصلی در پایین (Order 2) نمایش داده شود. */
    .store-panel-filter {
        order: 1; /* فیلتر در بالا قرار می‌گیرد */
        /* یا اگر می‌خواهید محتوای اصلی اول باشد، می‌توانید این را 2 کنید. */
    }

    .store-panel-main {
        order: 2; /* لیست محصولات در پایین قرار می‌گیرد */
    }
}