/*
Theme Name: Hello Elementor Child
Template: hello-elementor
 Version:      1.0.0
*/




#user-request-form, 
#user-request-form button,
#user_request_type,
.close-popup
 {
  font-family: shabnam, sans-serif !important;
}








/* =================================================================== */
/* START: استایل‌های سیستم مدیریت کارها (بخش کاربری)                    */
/* =================================================================== */

/* --- انیمیشن‌ها --- */
@keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.05); }
    100% { transform: scale(1); }
}
@keyframes wobble {
    0%, 100% { transform: translateX(0%); }
    15% { transform: translateX(-2px) rotate(-3deg); }
    30% { transform: translateX(2px) rotate(2deg); }
    45% { transform: translateX(-2px) rotate(-1deg); }
    60% { transform: translateX(2px) rotate(1deg); }
    75% { transform: translateX(-1px) rotate(0deg); }
}


/* =================================================================== */
/* ۱. استایل جدول کاربری [karha_user_table]                         */
/* =================================================================== */

/* --- استایل کلی wrapper و فیلترها --- */


.page-numbers a ,
.short-title,
.user-show-video-popup,
.title-popup-trigger,
.status-badge,
.user-show-messages-popup,
.link-button,
.status-badge,
.filters-grid,
.user-request-popup-trigger,
.cul-info,
#karha-status-filter,
#karha-request-filter,
#karha-search-input,
#karha-request-form,
#karha-request-form button

{
    font-family: shabnam, sans-serif !important;
    
}

.karha-user-table-wrapper {
    font-family: shabnam, sans-serif !important;

    color: #e0e0e0;
}



.karha-user-filters-form input,
.karha-user-filters-form select {
    background-color: #252525;
    color: #e0e0e0;
    border: 1px solid #444;
    border-radius: 1rem;
    padding: 10px 15px;
}
.karha-user-filters-form input:focus,
.karha-user-filters-form select:focus {
    border-color: #007bff;
    outline: none;
}

/* --- استایل بدنه اصلی جدول --- */
.karha-user-table-wrapper .karha-table {
    background-color: #1A1A1A;
    border: 1px solid #333;
    border-radius: 1rem;
    border-collapse: separate;
    border-spacing: 0;
    overflow: hidden;
}

/* --- سرستون‌های جدول (Header) --- */
.karha-user-table-wrapper th {
    background-color: #222 !important;
    color: #fafafa;
    border-bottom: 1px solid #333;
    font-weight: 600;
}

/* --- سلول‌های جدول (Body) --- */
.karha-user-table-wrapper td {
    border-top: 1px solid #2a2a2a;
    color: #ccc;
    padding: 20px 15px;
}

/* --- استایل دکمه‌های داخل جدول --- */
.karha-user-table-wrapper .button,
.karha-user-table-wrapper .link-button {
    color: #fff !important;
    border: none !important;
    border-radius: 1rem !important;
    box-shadow: 0 2px 5px rgba(0,0,0,0.4) !important;
    padding: 8px 12px !important;
}

/* رنگ‌بندی دکمه‌های مختلف */
.karha-user-table-wrapper .user-show-video-popup {
    background-color: #FFCC00 !important;
    color: #000 !important;
    border: 1px solid #000 !important;
}
.karha-user-table-wrapper .user-show-video-popup:hover {
    background-color: #000 !important;
    color: #FFCC00 !important;
    border-color: #FFCC00 !important;
}
.karha-user-table-wrapper .user-show-messages-popup { background-color: #a35516 !important; } /* نارنجی */
.karha-user-table-wrapper .user-request-popup-trigger { background-color: #007bff !important; } /* آبی */
.karha-user-table-wrapper .user-request-disabled-btn { background-color: #5a6268 !important; } /* خاکستری */










/* .karha-table-body {
    width: 100%;
    table-layout: fixed;
} */



/* --- استایل عرض ستون‌ها (نسخه نهایی با !important) --- */

.karha-user-table-wrapper .karha-table {
    width: 100%;
    table-layout: fixed !important;
}

.karha-user-table-wrapper th[id*="date_register"],
.karha-user-table-wrapper td[data-label*="تاریخ ثبت"] {
    width: 10% !important;
}

.karha-user-table-wrapper th[id*="deadline"],
.karha-user-table-wrapper td[data-label*="مهلت"] {
    width: 12% !important;
}

.karha-user-table-wrapper th[id*="title"],
.karha-user-table-wrapper td[data-label*="عنوان"] {
    width: 28% !important;
}

.karha-user-table-wrapper th[id*="image-column-content"],
.karha-user-table-wrapper td[data-label*="عکس/کلیپ"] {
    width: 10% !important;
}

.karha-user-table-wrapper th[id*="cul-info"],
.karha-user-table-wrapper td[data-label*="اطلاعات"] {
    width: 10% !important;
}

.karha-user-table-wrapper th[id*="colleague_user_id"],
.karha-user-table-wrapper td[data-label*="هماهنگی"] {
    width: 10% !important;
}

.karha-user-table-wrapper th[id*="links_combined"],
.karha-user-table-wrapper td[data-label*="لینک‌ها"] {
    width: 10% !important;
}

.karha-user-table-wrapper th[id*="user-table-actions"],
.karha-user-table-wrapper td[data-label*="عملیات"] {
    width: 10% !important;
}


.karha-user-table-wrapper .short-title {
    text-align: left !important;
    direction: ltr;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.user-new-message-indicator {
    animation: wobble 2s infinite;
    animation-delay: 1s;
    display: inline-block;

}

.request-indicator {
    color: #dc3545; 
    font-size: 20px; 
    font-weight: bold; 
    cursor: help;
    /* خط جدید برای افزودن انیمیشن */
    animation: wobble 2s infinite;
    animation-delay: 1s;
}

/* --- استایل نمایش در حالت موبایل --- */
@media screen and (max-width: 782px) {
    .karha-user-table-wrapper .karha-table tr {
        background-color: #202020;
        border: 1px solid #444;
        border-radius: 1rem;
    }
    .karha-user-table-wrapper .karha-table td:before {
        color: #888;
    }
}





.image-column-content button {
    font-size: 12px;
}








.karha-pagination {
  display: flex;
  justify-content: center;
  margin-top: 30px;
  font-family: shabnam, sans-serif;
}

.karha-pagination ul.page-numbers {
  display: flex;
  gap: 6px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.karha-pagination a {
  display: inline-block;
  padding: 8px 14px;
  border-radius: 8px;
  background-color: #000000;
  color: #ffffff;
  text-decoration: none;
  font-size: 14px;
  transition: 0.2s;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.karha-pagination a:hover {
  background-color: #1A1A1A;
}

.karha-pagination .current {
  background-color: #414141 !important;
  color: #fff !important;
  padding: 8px 14px;
  border-radius: 8px;

  cursor: default;
  font-weight: bold;
}

.karha-pagination .dots {
  padding: 8px 10px;
  color: #ffffff;
  cursor: default;
  background: transparent;
  box-shadow: none;
}












/* =================================================================== */
/* ۲. استایل فرم درخواست [karha_request_form]                       */
/* =================================================================== */






#karha-request-form {
    width: 100%;
}







.karha-request-form-wrapper {
    width: 100%;
    margin: 2rem auto;
    padding: 2rem;
    background: #252525;
    border-radius: 1rem;
    border: 1px solid #333;
    color: #e0e0e0;
}
.karha-request-form-wrapper .form-title {
    text-align: center;
    font-size: 1.8rem;
    margin-bottom: 2rem;
    color: #fafafa;
    border-bottom: 1px solid #444;
    padding-bottom: 1rem;
}
.karha-request-form-wrapper .form-field {
    margin-bottom: 1.5rem;
}
.karha-request-form-wrapper label {
    display: block;
    font-weight: bold;
    margin-bottom: 0.5rem;
    color: #ccc;
}
.karha-request-form-wrapper input[type="text"],
.karha-request-form-wrapper input[type="url"] {
    width: 100%;
    padding: 0.8rem 1rem;
    background-color: #1A1A1A;
    color: #e0e0e0;
    border: 1px solid #444;
    border-radius: 1rem;
    box-sizing: border-box;
}
.karha-request-form-wrapper input[type="text"]:focus,
.karha-request-form-wrapper input[type="url"]:focus {
    border-color: #FFCC00;
    outline: none;
}
.karha-request-form-wrapper .submit-btn {
    width: 100%;
    padding: 1rem;
    background-color: #FFCC00;
    color: #000;
    border: none;
    border-radius: 1rem;
    font-size: 1.1rem;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.3s ease;
}
.karha-request-form-wrapper .submit-btn:hover {
    background-color: #000;
    color: #FFCC00;
    border: 1px solid #FFCC00;
}
.request-form-screenshot-area {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
    align-items: center;
    background: #1A1A1A;
    padding: 1.5rem;
    border-radius: 1rem;
    border: 1px solid #444;
}
.screenshot-uploader-controls .button {
    border-radius: 1rem !important;
    padding: 10px;
    font-size: 12px;
    font-weight: bold;
    background: #FFCC00 !important;
    color: #000 !important;
    border: 1px solid #000 !important;
    transition: all 0.3s ease;
    width: 30%;
}
.screenshot-uploader-controls .button:hover {
    background-color: #000 !important;
    color: #FFCC00 !important;
    border-color: #FFCC00 !important;
    animation: pulse 1s infinite;
}

.buttons {
    width: 100%;
}

.buttons img {
    width: 10%;
    gap: 15px;
}

.screenshot-uploader-controls .paste-btn {
    background-color: #e6b800 !important;
}
.screenshot-uploader-controls {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 15px;
    font-size: 12px;
    color: #888;
    text-align: center;
    margin-top: 0.5rem;

}




#karha-request-form label {
    margin-right: 15px;
    
}








.file-name-display {
    font-size: 12px;
    color: #888;
    text-align: center;
    margin-right: 10px;
    margin-top: 10px;
    width: 100%;

}
.screenshot-preview {
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #111;
    border-radius: 1rem;
    border: 1px dashed #444;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.screenshot-preview img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.karha-form-message.success {
    background-color: #1c4b2a;
    color: #a3e9b6;
    border: 1px solid #28a745;
    border-radius: 1rem;
}
.karha-form-message.error {
    background-color: #58151c;
    color: #f5c6cb;
    border: 1px solid #dc3545;
    border-radius: 1rem;
}


.karha-form-message.success,
.karha-form-message.error {
    padding: 40px;
    text-align: center;
}

/* =================================================================== */
/* ۳. استایل‌های عمومی پاپ‌آپ (مشترک)                                   */
/* =================================================================== */

.popup-action-button {
    display: inline-block !important;
    width: auto !important;
    padding: 8px 25px !important;
    text-align: center;
    border-radius: 1rem !important;
}
.popup-section {
    text-align: center;
}

.title-buttons-container button {
}















/* استایل پاپ آپ عکس و کلیپ */


.video-link-form {
    display: flex;
    flex-direction: row;
    gap: 10px;
    text-align: center;
    justify-content: center;
}


.video-link-form input {
    border-radius: 1rem !important;
}


.video-link-save-btn {
    border-radius: 1rem !important;
    background-color: #fc6bb3 !important;
    padding: 10px;
    transition: 0.5s;
    cursor: pointer;
    font-weight: 600px;
    border: 1px solid !important;

}




.video-link-save-btn:hover {
    background-color: #c42a7f !important;
    border:  #14000b;
}

.screenshot-gallery img {
    border-radius: 1rem !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);

}
.screenshot-gallery img:hover {
    animation: pulse 1s infinite;
    box-shadow: 0 50px 50px rgba(0, 0, 0, 0.05);


}


.messages-box-container {
    margin-top: 20px !important;

}

.video-link-input {
    padding: 10px;
    width: 60%;
}





















.user-request-popup-content {
    font-family: "Tahoma", sans-serif !important;
    direction: rtl !important;
    margin: 0 auto !important;
    background: #fff !important;
    padding: 25px !important;
    border-radius: 1rem !important;
    box-shadow: 0 6px 15px rgba(0,0,0,0.1) !important;
    color: #333 !important;
    width: 90% !important;
}

.user-request-popup-content h3 {
    font-size: 1.3rem !important;
    margin-bottom: 18px !important;
    text-align: center !important;
    color: #222 !important;
}

.user-request-popup-content form {
    display: flex !important;
    flex-direction: column !important;
    gap: 15px !important;
    padding: 20px;
}

.form-section {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.form-field label {
    font-weight: 600 !important;
    margin-bottom: 5px !important;
    display: block !important;
    font-size: 0.95rem !important;
    color: #444 !important;
}

.form-field select,
.form-field textarea {
    padding: 8px 12px !important;
    font-size: 1rem !important;
    border: 1.8px solid #ccc !important;
    border-radius: 1rem !important;
    transition: border-color 0.3s ease !important;
    resize: vertical !important;
    font-family: inherit !important;
    color: #333 !important;
}
.form-field select {
    width: 100%;

}
.form-field textarea {
    width: 95%;

}

#user_request_type option {
    border-radius: 1rem !important;
}



.form-field select:focus,
.form-field textarea:focus {
    border-color: #0073aa !important;
    outline: none !important;
    box-shadow: 0 0 5px #0073aa88 !important;
}

#user-request-files-wrapper {
    margin-top: 8px !important;
    display: flex !important;
    flex-direction: column;
    flex-wrap: wrap !important;
    gap: 8px !important;
}





.browse-request-file-btn {
    background-color: #0073aa;
    border-radius: 1rem;
    padding: 5px 10px;
    color: #fff;
    font-weight: 500;
    transition: 0.3s;

}
.browse-request-file-btn:hover {
    background-color: #002638;

}






.add-request-file-btn {
    width: 36px !important;
    height: 36px !important;
    font-size: 24px !important;
    line-height: 1 !important;
    padding: 0 !important;
    border-radius: 50% !important;
    border: none !important;
    background-color: #0073aa !important;
    color: #fff !important;
    cursor: pointer !important;
    transition: background-color 0.3s ease !important;
    align-self: flex-start !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.add-request-file-btn:hover {
    background-color: #005f8d !important;
}

#user-request-total-size {
    font-size: 0.85rem !important;
    color: #666 !important;
    margin-top: 6px !important;
}


#user-request-form {
    padding: 0px !important;
}


#user-request-form button{
    background-color: #2bbb4d;
    color: #fff;
    padding: 12px 20px !important;
    border-radius: 1rem;
    font-size: 1.05rem ;
    font-weight: 600;
    cursor: pointer !important;
    transition: background-color 0.3s ease !important;
}

#user-request-form button:hover {
    background-color: #166828;
}

/* Responsive */
@media (max-width: 450px) {
    .user-request-popup-content {
        max-width: 90vw !important;
        padding: 15px 18px !important;
    }
}











/* --- اصلاحات ظاهری جدول کاربر --- */

/* ۱. وسط‌چین کردن و کوچک کردن فیلترها */
.karha-user-filters-form .filters-grid {
    display: flex;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
}
.karha-user-filters-form input,
.karha-user-filters-form select {
    flex-grow: 1;
    max-width: 250px; /* کنترل حداکثر عرض فیلدها */
}

/* ۲. رفع مشکل انحنای حاشیه جدول */
.karha-user-table-wrapper .karha-table {
    border-collapse: separate; /* این مورد برای اعمال border-radius ضروری است */
    border-spacing: 0;
    border: 1px solid #333; /* یک حاشیه نازک برای کل جدول */
    border-radius: 1rem;   /* انحنای حاشیه به خود جدول اعمال می‌شود */
    overflow: hidden;      /* گوشه‌های سلول‌های داخلی را مخفی می‌کند */
}

/* ۳. نازک کردن خطوط و ایجاد ردیف‌های دو رنگ (Zebra Striping) */
.karha-user-table-wrapper td {
    border: none; /* حذف حاشیه‌های قبلی سلول‌ها */
    border-top: 1px solid #2a2a2a; /* فقط یک خط نازک در بالا */
}
.karha-user-table-wrapper tbody tr:nth-child(even) {
    background-color: #222; /* رنگ تیره‌تر برای ردیف‌های زوج */
}

.filters-grid input{
    border-radius: 1rem !important;
}
































.karha-request-form-wrapper .submit-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}












/* این کد را در style.css پیدا کرده و جایگزین کنید */

.message-bubble.other {
    background-color: #e5ddd5 !important; /* رنگ حباب طرف مقابل (مثلا خاکستری) */
    color: #333 !important;
    border-bottom-right-radius: 4px !important;
    align-self: flex-start !important; /* نمایش در سمت چپ */
}
.message-bubble.self {
    background-color: #dcf8c6 !important; /* رنگ حباب شما (مثلا سبز) */
    color: #333 !important;
    border-bottom-left-radius: 4px !important;
    align-self: flex-end !important; /* نمایش در سمت راست */
}

/* برای رنگ نام فرستنده، می‌توانید این بخش را نیز اصلاح کنید */
.message-bubble.other .sender-name { color: #075e54 !important; }
.message-bubble.self .sender-name { color: #555 !important; }




















/* =================================================================== */
/* ۴. استایل نهایی و ساده شده بخش ارسال پیام                          */
/* =================================================================== */

/* استایل کلی. چیدمان اصلی توسط استایل درون‌خطی کنترل می‌شود */
.karha-overlay .message-input-area {
    padding-top: 15px;
    border-top: 1px solid #444;
}

/* --- استایل کانتینر بالایی --- */
.karha-overlay .top-input-container {
    background-color: #252525;
    border: 1px solid #444;
    border-radius: 1.5rem;
    padding: 8px;
}

.karha-overlay .top-input-container textarea {
    flex-grow: 1;
    background: transparent;
    border: none;
    color: #e0e0e0;
    resize: none;
    padding: 8px;
    font-family: shabnam, sans-serif !important;
    font-size: 14px;
    min-height: 42px;
}
.karha-overlay .top-input-container textarea:focus {
    outline: none;
}

.karha-overlay .top-input-container .send-message-btn {
    flex-shrink: 0;
    background-color: #2bbb4d !important;
    color: #fff !important;
    border-radius: 1.2rem !important;
    font-weight: bold;
    border: none;
    padding: 8px 18px !important;
}
.karha-overlay .top-input-container .send-message-btn:hover {
    background-color: #166828 !important;
}


/* --- استایل کانتینر پایینی --- */
.karha-overlay .bottom-attachment-container .add-admin-message-file-btn {
    width: 100%;
    order: 2; /* این دکمه بعد از لیست فایل‌ها و شمارشگر قرار می‌گیرد */
    background-color: #333 !important;
    color: #FFCC00 !important;
    border: 1px solid #555 !important;
    border-radius: 1rem !important;
    font-size: 20px !important;
    padding: 5px !important;
}
.karha-overlay .bottom-attachment-container .add-admin-message-file-btn:hover {
    background-color: #FFCC00 !important;
    color: #000 !important;
}

/* استایل نگهدارنده ردیف‌های فایل */
#admin-message-files-wrapper {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 8px;
    order: 0;
}

/* استایل هر ردیف فایل */
#admin-message-files-wrapper .file-upload-row {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    background-color: #252525;
    border: 1px solid #444;
    border-radius: 12px;
    font-size: 13px;
}

#admin-message-files-wrapper .file-upload-row .browse-request-file-btn {
    border-radius: 8px !important;
    padding: 5px 10px !important;
    font-size: 12px !important;
    background-color: #555 !important;
}
#admin-message-files-wrapper .file-upload-row .file-name-display {
    flex-grow: 1; color: #ccc; text-align: left; direction: ltr;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
#admin-message-files-wrapper .file-upload-row .file-size-display { color: #888; }
#admin-message-files-wrapper .file-upload-row .remove-request-file-btn {
    display: block !important; color: #ff4d4d !important; cursor: pointer; font-size: 18px;
}

/* استایل شمارشگر حجم کل */
#admin-message-total-size {
    font-size: 12px;
    color: #888;
    text-align: left;
    padding: 0 5px;
    width: 100%;
    order: 1;
}
















