.elementor-20723 .elementor-element.elementor-element-ca74588{--display:flex;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d{width:100%;max-width:100%;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d.elementor-element{--align-self:center;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form__label, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__label{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form__desc, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__desc{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form__label, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__label, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form__desc, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__desc{display:flex;justify-content:center;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-col, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder-row{align-items:center;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form__field:not(.checkradio-field):not(.range-field), .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__field:not(.checkradio-field):not(.range-field){font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form__field:not(.checkradio-field):not(.range-field), .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__field:not(.checkradio-field):not(.range-field):not(.jet-form-builder-repeater){background-color:#EBEBEB;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form__field.textarea-field, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__field.textarea-field{height:10px;min-height:10px;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form .checkradio-wrap, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder .checkradio-wrap{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form__calculated-field, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__calculated-field{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form__heading, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__heading{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form__heading-desc, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__heading-desc{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-repeater__new, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder-repeater__new{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-repeater__actions, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder-repeater__actions{justify-content:flex-start;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-repeater__row-remove, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder-repeater__row-remove{align-self:flex-start;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form__required, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__required{color:var( --e-global-color-eae0730 );}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form .jet-apb-calendar .jet-apb-calendar-content{width:100%;min-width:100%;flex:0 0 100%;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form .jet-apb-calendar-header{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form .jet-apb-calendar-week span{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form .jet-apb-calendar-body{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form .jet-apb-slot{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form .jet-apb-calendar-slots__close{font-size:35px;top:10px;right:10px;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form__submit, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__submit{background-color:#780000;font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );padding:15px 15px 15px 15px;border-radius:10px 10px 10px 10px;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form__submit-wrap, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__submit-wrap{justify-content:flex-start;align-items:flex-start;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__submit{justify-content:center;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-message, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder-message{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-align:center;}.elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form__field-error, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder__field-error, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form .jet-engine-file-upload__errors, .elementor-20723 .elementor-element.elementor-element-d3ccd6d .jet-form-builder-file-upload__errors{text-align:left;}:root{--page-title-display:none;}@media(min-width:769px){.elementor-20723 .elementor-element.elementor-element-ca74588{--content-width:75%;}}/* Start custom CSS for jet-engine-booking-form, class: .elementor-element-d3ccd6d *//* ------------------------------------------- */
/* 1. استایل‌دهی کلی کانتینر فرم */
/* ------------------------------------------- */
.my-appointment-form {
    padding: 20px; /* فضای داخلی برای فرم */
    border-radius: 8px; /* گوشه‌های گرد */
    background-color: #f8f9fa; /* رنگ پس‌زمینه ملایم */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); /* سایه نرم برای برجسته‌سازی */
}

/* ------------------------------------------- */
/* 2. استایل‌دهی فیلدهای ورودی و Select */
/* ------------------------------------------- */
.my-appointment-form input[type="text"],
.my-appointment-form input[type="email"],
.my-appointment-form input[type="tel"],
.my-appointment-form input[type="number"],
.my-appointment-form select {
    width: 100%; /* عرض کامل فیلد */
    padding: 12px 15px; /* پدینگ برای زیبایی و فضای بیشتر */
    margin-bottom: 15px; /* فاصله بین فیلدها */
    border: 1px solid #ced4da; /* حاشیه خاکستری ملایم */
    border-radius: 4px; /* گوشه‌های کمی گرد */
    box-sizing: border-box; /* اطمینان از درست بودن ابعاد */
    transition: border-color 0.3s, box-shadow 0.3s; /* انیمیشن نرم */
    background-color: #ffffff; /* پس‌زمینه سفید */
}

/* افکت Focus برای فیلدها */
.my-appointment-form input[type="text"]:focus,
.my-appointment-form select:focus {
    border-color: #007bff; /* رنگ آبی برای تمرکز */
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); /* سایه آبی کم‌رنگ */
    outline: none; /* حذف حاشیه پیش‌فرض مرورگر */
}

/* ------------------------------------------- */
/* 3. استایل‌دهی برچسب‌ها (Labels) */
/* ------------------------------------------- */
.my-appointment-form label {
    display: block; /* برای اینکه هر برچسب در خط جدید باشد */
    margin-bottom: 5px; /* فاصله از فیلد ورودی */
    font-weight: bold; /* فونت ضخیم‌تر */
    color: #343a40; /* رنگ متن تیره */
}

/* ------------------------------------------- */
/* 4. استایل‌دهی دکمه ارسال (Submit Button) */
/* ------------------------------------------- */
.my-appointment-form .jet-form__submit {
    width: 100%; /* عرض کامل دکمه */
    padding: 15px; /* پدینگ بزرگ‌تر */
    background-color: #28a745; /* رنگ سبز جذاب */
    color: white; /* متن سفید */
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 18px; /* فونت بزرگ‌تر */
    font-weight: bold;
    transition: background-color 0.3s, transform 0.2s; /* انیمیشن نرم */
    margin-top: 20px; /* فاصله از آخرین فیلد */
}

/* افکت Hover برای دکمه */
.my-appointment-form .jet-form__submit:hover {
    background-color: #218838; /* سبز تیره‌تر هنگام هاور */
    transform: translateY(-1px); /* کمی حرکت به بالا */
}

/* ------------------------------------------- */
/* 5. استایل‌دهی خاص فیلد تاریخ (Appointment Date) */
/* (ممکن است کلاس دقیق‌تر نیاز باشد) */
/* ------------------------------------------- */
/* استایل‌دهی به کانتینر تقویم اگر نیاز باشد */
.jet-form-builder .jet-ap-date-picker__calendar-wrap {
    /* مثال: اگر می‌خواهید تقویم را وسط چین کنید یا اندازه دهید */
    /* max-width: 300px; */
    /* margin: 15px auto; */
}

/* ------------------------------------------- */
/* 6. پیام‌های موفقیت و خطا (اختیاری) */
/* ------------------------------------------- */
.my-appointment-form .jet-form-builder__response-message {
    padding: 10px;
    margin-top: 15px;
    border-radius: 4px;
    font-weight: bold;
}

.my-appointment-form .jet-form-builder__response-message.success {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.my-appointment-form .jet-form-builder__response-message.error {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

/* تنظیمات کلی و ریسپانسیو تقویم جت‌آنلاین */
.jet-apb-calendar-content {
    direction: rtl !important;
    width: 100% !important;
    font-family: inherit;
}

/* هدر تقویم (ماه و سال) */
.jet-apb-calendar-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 20px !important;
}

/* ردیف روزهای هفته */
.jet-apb-calendar-week {
    display: flex !important;
    width: 100% !important;
    margin-bottom: 10px !important;
    border-bottom: 1px solid #ececec !important;
    padding-bottom: 8px !important;
}

.jet-apb-calendar-week span {
    width: 14.285% !important;
    text-align: center !important;
    font-weight: bold !important;
    font-size: 14px !important;
}

/* بدنه تقویم و روزها */
.jet-apb-calendar-body {
    display: block !important;
    width: 100% !important;
    text-align: right !important; /* برای حفظ موقعیت شروع ماه */
}

.jet-apb-calendar-date {
    display: inline-block !important;
    width: 14.285% !important; /* ۷ روز در یک ردیف */
    text-align: center !important;
    padding: 12px 0 !important;
    box-sizing: border-box !important;
    vertical-align: top !important;
}

.jet-apb-calendar-date-body {
    display: inline-block !important;
    width: 35px;
    height: 35px;
    line-height: 35px;
    border-radius: 50%;
    transition: all 0.3s ease;
}

/* استایل مخصوص موبایل (صفحات زیر 768 پیکسل) */
@media (max-width: 767px) {
    .jet-apb-calendar-week span {
        font-size: 11px !important; /* فونت کوچک‌تر برای روزهای هفته */
    }

    .jet-apb-calendar-date {
        padding: 8px 0 !important; /* فاصله کمتر بین روزها */
    }

    .jet-apb-calendar-date-body {
        width: 30px; /* دایره کوچک‌تر برای اعداد */
        height: 30px;
        line-height: 30px;
        font-size: 13px !important;
    }
    
    .jet-apb-calendar-header__label {
        font-size: 16px !important;
    }
}

/* استایل روزهای انتخاب شده و امروز */
.jet-apb-calendar-date--today .jet-apb-calendar-date-body {
    background-color: #f0f0f0;
    font-weight: bold;
}

.jet-apb-calendar-date--selected .jet-apb-calendar-date-body {
    background-color: #ba0000 !important; /* رنگ دایره روز انتخاب شده */
    color: #fff !important;
}

/* --- اصلاح استایل بخش ساعت‌ها (Time Slots) --- */

/* کانتینر اصلی ساعت‌ها */
.jet-apb-calendar-slots-container {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important; /* ۴ ستونه در دسکتاپ */
    gap: 12px !important;
    margin-top: 20px !important;
    direction: ltr !important; /* ساعت‌ها معمولاً انگلیسی و چپ‌به‌راست بهتر دیده می‌شوند */
}

/* استایل هر دکمه ساعت */
.jet-apb-slot {
    cursor: pointer !important; /* تبدیل موس به حالت دست */
    padding: 10px 5px !important;
    text-align: center !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    background-color: #f9f9f9 !important;
    transition: all 0.2s ease !important;
    font-size: 13px !important;
    font-weight: 500 !important;
}

/* حالت هاور و انتخاب ساعت */
.jet-apb-slot:hover {
    background-color: #f0f0f0 !important;
    border-color: #adadad !important;
}

.jet-apb-slot--selected {
    background-color: #ba0000 !important; /* رنگ سازمانی خودت را بگذار */
    color: #fff !important;
    border-color: #ba0000 !important;
}

/* --- ریسپانسیو ساعت‌ها برای موبایل --- */
@media (max-width: 767px) {
    .jet-apb-calendar-slots-container {
        grid-template-columns: repeat(2, 1fr) !important; /* ۲ ستونه در موبایل */
        gap: 8px !important;
    }
    
    .jet-apb-slot {
        padding: 12px 5px !important;
        font-size: 12px !important;
    }
}

/* --- فعال کردن Pointer برای روزهای تقویم --- */
.jet-apb-calendar-date, 
.jet-apb-calendar-date-body,
.jet-apb-calendar-btn {
    cursor: pointer !important;
}

/* جلوگیری از کلیک روی روزهای غیرفعال */
.jet-apb-calendar-date--disabled {
    cursor: not-allowed !important;
}



/* --- اصلاح نهایی و قطعی بخش Wrapper جزئیات --- */

/* هدف قرار دادن ورپر اصلی که دیسپلی فلکس دارد */
.jet-apb-calendar-appointments-list-wrapper {
    direction: rtl !important;
    display: flex !important;
    flex-wrap: wrap !important; /* اجازه شکستن خط در صورت کمبود جا */
    justify-content: flex-start !important; /* شروع از سمت راست در RTL */
    align-items: center !important; /* تراز عمودی متن و باکس‌ها */
    gap: 15px !important;
    width: 100% !important;
    text-align: right !important;
}

/* اصلاح استایل عنوان "جزئیات نوبت دهی:" */
.jet-apb-calendar-appointments-list-wrapper .jet-form__heading {
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
}

/* تنظیم لیست نوبت‌ها */
.jet-apb-calendar-appointments-list {
    flex-grow: 1 !important; /* اشغال فضای باقی‌مانده */
    display: flex !important;
    justify-content: flex-start !important;
}

/* باکس اصلی محتوا (نقطه‌چین) */
.jet-apb-appointments-item-content {
    display: flex !important;
    flex-direction: row !important; /* حباب‌ها کنار هم */
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 12px 18px !important;
    border: 1px dashed #d1d1d1 !important;
    border-radius: 12px !important;
    background-color: #fafafa !important;
}

/* استایل تک‌تک حباب‌ها (مشاوره، تاریخ، ساعت) */
.jet-apb-item-service-provider,
.jet-apb-item-time,
.jet-apb-item-date {
    background: #ffffff !important;
    border: 1px solid #e0e0e0 !important;
    padding: 5px 12px !important;
    border-radius: 50px !important;
    font-size: 13px !important;
    color: #444 !important;
    white-space: nowrap !important;
    display: flex !important;
    align-items: center !important;
}


/* --- ریسپانسیو موبایل --- */
@media (max-width: 767px) {
    .jet-apb-calendar-appointments-list-wrapper {
        flex-direction: column !important; /* در موبایل عنوان بالا و باکس پایین باشد */
        align-items: flex-start !important;
    }
    
    .jet-apb-appointments-item-content {
        width: 100% !important;
        flex-direction: column !important; /* حباب‌ها در موبایل زیر هم */
        gap: 5px !important;
    }
    
    .jet-apb-item-service-provider,
    .jet-apb-item-time,
    .jet-apb-item-date {
        width: 100% !important;
        justify-content: center !important;
    }
}/* End custom CSS */