/* Master Stylesheet */



:root {
    /* --primary: #4f46e5;
    --success: #10b981;
    --error: #ef4444;
    --text-dark: #111827;
    --text-light: #6b7280;
    --bg-gray: #f9fafb;
    --white: #ffffff;
    --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05); */

    /* --- Primary Branding --- */
    --primary: #4f46e5;
    /* The main brand purple/blue */
    --primary-soft: rgba(79, 70, 229, 0.1);
    /* Light background for active states */
    --primary-hover: #4338ca;

    /* --- Semantic Colors --- */
    --success: #10b981;
    --success-soft: #dff7ef;
    /* Green for match, completion, and checkmarks */
    --error: #ef4444;
    /* Red for password mismatch or errors */
    --error-soft: #f8d7da;
    --warning: #f59e0b;
    /* Amber for password strength warnings */
    --warning-soft: #fff5d9;

    /* --- Neutral Palette (Light Mode) --- */
    --bg-main: #f9fafb;
    /* Main page background */
    --bg-card: #ffffff;
    /* Card and Sidebar backgrounds */
    --text-main: #111827;
    /* Primary headings and text */
    --text-muted: #6b7280;
    /* Secondary text, bios, and labels */
    --border-color: #e5e7eb;
    /* Dividers and card outlines */

    /* --- Shadows & Accents --- */
    --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    --white: #ffffff;
    --gold: #d4af37;
    /* Used for the Certificate border */

}

body {
    /* background: linear-gradient(180deg, #f3e7e9 0%, #e3eeff 99%, #e3eeff 100%); */
    /* background-size: cover;
    background-attachment: fixed; */


    /* background-image: linear-gradient(to top, #fbc2eb 0%, #a6c1ee 100%); */

    /* background-image: linear-gradient(to top, #f3e7e9 0%, #e3eeff 99%, #e3eeff 100%); */

    /* background-image: linear-gradient(to top, #dad4ec 0%, #dad4ec 1%, #f3e7e9 100%); */

    background-image: linear-gradient(135deg, #eef2f7 0%, #e0e8f5 100%);

    background-size: cover;
    background-attachment: fixed;



}

/* * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: 'Inter', sans-serif;
} */

/* تعميم خط كايرو على النظام بالكامل */
html,
body,
*,
.btn,
.form-control,
.modal-title,
.nav-link {
    font-family: 'Tajawal', sans-serif !important;
}




/* لمسة إضافية: تحسين وضوح الحروف وقراءتها على الشاشات */

/* تنسيق اختياري لتميز العناوين بوزن أعرض */
h1,
h2,
h3,
h4,
h5,
h6,
.fw-bold {
    font-weight: 700 !important;
    /* وزن عريض للعناوين */
}

p,
td,
span,
label {
    font-weight: 400;
    /* وزن عادي ومريح للقراءة داخل الجداول */
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    letter-spacing: 0;

    line-height: 1.5;
    /* background-color: var(--bg-main); */
    color: var(--text-main);
    transition: background-color 0.3s, color 0.3s;
}


/* body {
    font-family: 'Inter', sans-serif;
    margin: 0;
    color: var(--text);
    background: #f5efec;
} */


/* Hero Section */
.hero {
    text-align: center;
    padding: 100px 10%;
    background: linear-gradient(135deg, #eef2ff 0%, #f9fafb 100%);
    height: 50%;

    background: linear-gradient(rgba(0, 0, 0, 0.2),
            /* Dark transparent color */
            rgba(0, 0, 0, 0.2)
            /* Dark transparent color */
        ),
        url('../images/haramDuaa.png') no-repeat center center;
    /* Your image */
    background-size: cover;
    background-attachment: fixed;

}

.sidebar-tree {
    background: #f8f9fa;
    border-left: 1px solid #dee2e6;
    min-height: 100vh;
    padding: 20px;
    overflow-x: auto;
}

.main-content {
    padding: 30px;
}

.card-header {
    background: #fff;
    font-weight: bold;
}

::placeholder {
    color: rgb(202, 202, 202) !important;
    /* Change the text color */
    font-size: 16px;
    /* Change the font size */
    /* font-style: italic; */
    /* Make the text italic */
    opacity: 1;
    /* Ensure full opacity in Firefox */
}

/* تحسين مظهر بطاقات الاختيار المتعدد لـ Select2 في ثيم Bootstrap 5 */
.select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__choice {
    background-color: #e9ecef;
    /* لون خلفية البطاقة */
    border: 1px solid #ced4da;
    border-radius: 4px;
    padding: 2px 8px;
    color: #495057;
    font-weight: bold;
}

/* تلوين زر الـ x الخاص بحذف البطاقة باللون الأحمر عند حوم الفأرة */
.select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__choice__remove:hover {
    color: #dc3545 !important;
    background-color: transparent;
}


/* تأثير النبض الجاذب للانتباه للمهام الجارية */
.animate-pulse {
    animation: pulseCustom 2s infinite;
}

@keyframes pulseCustom {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(1.05);
        opacity: 0.8;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

/* تنسيقات إضافية لجعل الجدول يبدو مريحاً للعين وفخم */
#my_tasks_datatable th {
    font-weight: 700;
    font-size: 0.9rem;
}

#my_tasks_datatable td {
    font-size: 0.95rem;
}

/* ---------- drop down */
/* Dropdown Button */
.dropbtn {
    background-color: #04AA6D;
    color: white;
    padding: 16px;
    font-size: 16px;
    border: none;
    cursor: pointer;
}

/* Dropdown button on hover & focus
.dropbtn:hover,
.dropbtn:focus {
    background-color: #3e8e41;
} */

/* The search field */
#myInput {
    box-sizing: border-box;
    background-image: url('searchicon.png');
    background-position: 14px 12px;
    background-repeat: no-repeat;
    font-size: 16px;
    padding: 14px 20px 12px 45px;
    border: none;
    border-bottom: 1px solid #ddd;
}

/* The search field when it gets focus/clicked on */
#myInput:focus {
    outline: 3px solid #ddd;
}

/* The container <div> - needed to position the dropdown content */
.dropdown {
    position: relative;
    display: inline-block;
}

/* Dropdown Content (Hidden by Default) */
.dropdown-content {
    display: block;
    position: absolute;
    background-color: #f6f6f6;
    min-width: 230px;
    border: 1px solid #ddd;
    z-index: 1;
}

/* Links inside the dropdown */
.dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}

/* Change color of dropdown links on hover */
.dropdown-content a:hover {
    background-color: #f1f1f1
}

/* Show the dropdown menu (use JS to add this class to the .dropdown-content container when the user clicks on the dropdown button) */
.show {
    display: block;
}

.dropdown-item:hover {
    color: #5390f9 !important;

}


/* password toggle hide/show */
.password-wrapper {
    position: relative;
    display: inline-block;
    background-color: rgba(255, 255, 255, 0.05) !important;
    border: 0px !important;
    width: 300px !important;
}

.password-wrapper input {
    padding-right: 70px;
    /* space for icon */
}

.icon-container {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    width: 20px;
    height: 20px;
}

.icon-container img {
    width: 100%;
    height: auto;
}

/* file  */
/* .drop-zone {
    border: 2px dashed #4f46e5 !important;
    border-radius: 8px;
    padding: 30px;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
    background-color: #f3f4ff !important;
}

.drop-zone:hover {
    background-color: #e0e7ff !important;
    border-color: #4338ca !important;
}

.drop-zone i {
    font-size: 32px;
    color: var(--primary);
    margin-bottom: 10px;
    transition: transform 0.3s ease;
}

.drop-zone:hover i {
    transform: scale(1.1);
}

.drop-zone p {
    margin: 0;
    color: var(--text-muted);
    font-size: 14px;
    font-weight: 500;
} */


@media (max-width: 768px) {
    .dashboard-content {
        padding: 20px;
    }


}