body {
    font-family: 'Vazirmatn', 'Roboto Flex', 'Tahoma', sans-serif;
    direction: ltr;
    /* برای متن انگلیسی */
}

/* تنظیمات مختلف برای قسمت‌های مختلف */
h2 {
    font-weight: 800;
    font-stretch: 110%;
    letter-spacing: -0.5px;
}

label {
    font-weight: 500;
    font-stretch: 100%;
    font-size: 14px;
    font-family: 'Vazirmatn', 'Roboto Flex', 'Tahoma', sans-serif;
}

input,
select {
    font-family: 'Vazirmatn', 'Roboto Flex', 'Tahoma', sans-serif;
    font-weight: 400;
    font-stretch: 100%;
    font-size: 16px;
}

.btn-login {
    font-family: 'Vazirmatn', 'Roboto Flex', 'Tahoma', sans-serif;
    font-weight: 500;
    font-stretch: 105%;
    letter-spacing: 0.5px;
}

/* کلاس‌های کمکی */
.flex-light {
    font-weight: 300;
}

.flex-regular {
    font-weight: 400;
}

.flex-medium {
    font-weight: 500;
}

.flex-bold {
    font-weight: 700;
}

.flex-condensed {
    font-stretch: 75%;
}

.flex-expanded {
    font-stretch: 120%;
}

.flex-slant {
    font-style: oblique 8deg;
}


/* کلاس عمومی نستعلیق */
.nastaliq {
    font-family: 'Noto Nastaliq Urdu', 'Vazirman', 'Tahoma', sans-serif;
    line-height: 1.8;
    letter-spacing: 0.5px;
}

/* وزن‌های مختلف نستعلیق */
.nastaliq-regular {
    font-family: 'Noto Nastaliq Urdu', 'Vazirman', sans-serif;
    font-weight: 400;
}

.nastaliq-medium {
    font-family: 'Noto Nastaliq Urdu', 'Vazirman', sans-serif;
    font-weight: 500;
}

.nastaliq-semibold {
    font-family: 'Noto Nastaliq Urdu', 'Vazirman', sans-serif;
    font-weight: 600;
}

.nastaliq-bold {
    font-family: 'Noto Nastaliq Urdu', 'Vazirman', sans-serif;
    font-weight: 700;
}

.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.text-left {
    text-align: left;
}

.dir-rtl {
    direction: rtl;
}
.dir-left {
    direction: ltr;
}

.px-1 {
     padding-right: 0.5rem;
     padding-left: 0.5rem;
}

.px-2 {
     padding-right: 1rem;
     padding-left: 1rem;
}

.px-3 {
     padding-right: 1.5rem;
     padding-left: 1.5rem;
}

.px-4 {
     padding-right: 2rem;
     padding-left: 2rem;
}

.px-5 {
     padding-right: 2.5rem;
     padding-left: 2.5rem;
}

.px-6 {
     padding-right: 3rem;
     padding-left: 3rem;
}

.mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.py-1 {
     padding-top: 0.5rem;
     padding-bottom: 0.5rem;
}

.py-2 {
     padding-top: 1rem;
     padding-bottom: 1rem;
}

.py-3 {
     padding-top: 1.5rem;
     padding-bottom: 1.5rem;
}

.py-4 {
     padding-top: 2rem;
     padding-bottom: 2rem;
}

.py-5 {
     padding-top: 2.5rem;
     padding-bottom: 2.5rem;
}

.py-6 {
     padding-top: 3rem;
     padding-left: 3rem;
}






.pt-1 {
    padding-top: 0.5rem;
}

.pt-2 {
    padding-top: 1rem;
}

.pt-3 {
    padding-top: 1.5rem;
}

.pt-4 {
    padding-top: 2rem;
}

.pt-5 {
    padding-top: 2.5rem;
}

.pt-6 {
    padding-top: 3rem;
}


.pb-1 {
    padding-bottom: 0.5rem;
}

.pb-2 {
    padding-bottom: 1rem;
}

.pb-3 {
    padding-bottom: 1.5rem;
}

.pb-4 {
    padding-bottom: 2rem;
}

.pb-5 {
    padding-bottom: 2.5rem;
}

.pb-6 {
    padding-bottom: 3rem;
}

.mb-0 {
    margin-bottom: 0 !important;
}
/* start text color */
.text-white {
    color:#fff;
}


/* end text color */


/* start bg color */
.main-org {
    background-color:#121359e6;

}


#toast-container {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 999999;
    display: flex;
    flex-direction: column;
    gap: 10px;
    pointer-events: none;
}

.toast {
    background: #0f059b;
    text-align: right;
    direction: rtl;
    min-width: 250px;
    max-width: 320px;
    padding: 12px 15px;
    border-radius: 10px;
    color: #fff;
    font-size: 14px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.15);
    opacity: 0;
    transform: translateX(100%);
    transition: all 0.3s ease-out;
    margin-bottom: 10px;
}

/* ورود */
.toast.show {
    opacity: 1;
    transform: translateX(0);
}

/* خروج */
.toast.hide {
    opacity: 0;
    transform: translateX(100%);
}

/* پشتیبانی از انیمیشن برای مرورگرهای قدیمی */
@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateX(100%);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeOut {
    from {
        opacity: 1;
        transform: translateX(0);
    }
    to {
        opacity: 0;
        transform: translateX(100%);
    }
}

/* استفاده از انیمیشن برای مرورگرهایی که transition رو خوب پشتیبانی نمی‌کنند */
.toast.show {
    animation: slideIn 0.3s ease-out forwards;
}

.toast.hide {
    animation: fadeOut 0.3s ease-out forwards;
}