/* Dashboard Styles */
.dashboard-container {
    margin: 0 auto;
    padding: 0;

    /* Header */
    .dashboard-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 8px;
        padding: 20px 0;
        border-bottom: 1px solid var(--primary-color);
        gap: 10px;
        flex-wrap: wrap;

        .search-filters {
            display: flex;
            align-items: stretch;
            gap: 15px;
            
            .requerent-filter {
                display: flex;
                align-items: stretch;
                
                select {
                    background: var(--white);
                    border: 1px solid var(--primary-color);
                    border-radius: 10px;
                    padding: 10px 14px;
                    font-size: 14px;
                    color: var(--primary-color);
                    min-width: 200px;
                    cursor: pointer;
                    margin: 0;
                    height: auto;
                    box-sizing: border-box;
                    transition: all 0.3s ease;
                    
                    &:focus {
                        outline: none;
                        border-color: var(--primary-color);
                        box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.1);
                    }
                    
                    &:hover {
                        border-color: var(--primary-color);
                    }
                }
            }
            
            .search-bar{
                display: flex;
                align-items: center;
                gap: 10px;
                border: 1px solid var(--primary-color);
                border-radius: 10px;
                padding: 10px 14px;
                img{
                    width: 20px;
                    height: 20px;
                }
                input{
                    width: 100%;
                    padding: 10px;
                    margin: 0;
                    border: none;
                    outline: none;
                    background: transparent;
                    font-size: 14px;
                    font-weight: 400;
                    color: var(--primary-color);
                    &::placeholder {
                        color: #2260FF80;
                    }
                }
            }
        }

        h1 {
            color: var(--primary-black);
            display: flex;
            align-items: center;
            font-size: 30px;
            font-weight: 600;
            margin: 0;
            img{
                width: 32px;
                height: 32px;
                margin-right: 10px;
            }
        }

        
    }
    .dashboard-subheader{
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 25px;
        padding: 0;
        .dashboard-stats{
            font-size: 20px;
            font-weight: 500;
            color: var(--primary-black);
        }
        #createExpertiseBtn{
            padding: 20px;
            max-width : 250px;
        }
    }


    /* Empty State */
    .empty-state {
        text-align: center;
        padding: 60px 20px;
        background: var(--bg-primary);
        border-radius: 12px;
        border: 1px solid var(--border-light);

        i {
            font-size: 4rem;
            color: var(--border-medium);
            margin-bottom: 20px;
        }

        h3 {
            color: var(--text-primary);
            font-size: 1.5rem;
            margin-bottom: 12px;
        }

        p {
            color: var(--text-muted);
            font-size: 1rem;
            margin: 0;
        }
    }
    
    /* Empty Search State */
    .empty-search-state {
        text-align: center;
        padding: 40px 20px;
        background: var(--bg-primary);
        border-radius: 12px;
        border: 1px solid var(--border-light);
        margin-top: 20px;

        i {
            font-size: 3rem;
            color: var(--border-medium);
            margin-bottom: 15px;
        }

        h3 {
            color: var(--text-primary);
            font-size: 1.25rem;
            margin-bottom: 8px;
        }

        p {
            color: var(--text-muted);
            font-size: 0.9rem;
            margin: 0;
        }
    }

    /* Expertises Grid */
    .expertises-grid{
       
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        .expertise-item:nth-child(odd) {
            background-color: #f8f8f8;
            
            
        }

        /* Requérant Sections */
        .requerent-section {
            margin-bottom: 40px;
            padding: 20px;
            background: var(--bg-primary);
            border-radius: 12px;
            border: 1px solid var(--border-light);
            
            .requerent-title {
                color: var(--primary-black);
                font-size: 1.2rem;
                font-weight: 600;
                margin: 0 0 20px 0;
                padding: 0 15px;
                border-bottom: 2px solid var(--primary-color);
                padding-bottom: 8px;
            }

            .expertises-grid-header {
                margin-bottom: 10px;
            }
        }
        .expertises-grid-header{
            display: grid;
            grid-template-columns:  2fr 80px 1fr 1fr 30px;
            gap: 10px;
            padding : 0 15px; 
            grid-template-rows: auto;
           
            border-bottom: 1px solid #E6E6E6;

            .expertises-grid-header-item{
                display: flex;
                align-items: center;
                justify-content: center;
                font-size: 14px;
                font-weight: 600;
                color: var(--primary-black);
                &.no-center{
                    justify-content: flex-start;
                }
            }
            
        }
        .expertise-item{
            position: relative;
            display: grid;
            grid-template-columns: 2fr 80px 1fr 1fr 30px;
            gap: 10px;
            grid-template-rows: auto;
            padding : 15px; 
            &:hover{
                background-color: #2260FF0A;
                cursor: pointer;
            }
            
            .expertise-link-wrapper {
                display: contents;
                text-decoration: none;
                color: inherit;
                
                &:hover {
                    text-decoration: none;
                    color: inherit;
                }
            }
            
                         .expertise-field{
                 display: flex;
                 align-items: center;
                 justify-content: center;
                 color : #000;
                 
                                   &.expertise-user {
                      overflow: hidden;
                      text-overflow: ellipsis;
                      white-space: nowrap;
                      
                      span {
                          overflow: hidden;
                          text-overflow: ellipsis;
                          white-space: nowrap;
                          max-width: 100%;
                      }
                  }
             }
            .expertise-title{
                font-size: 14px;
                display: flex;
                align-items: center;
                color : #000;
                font-weight: 400;
                text-decoration: none;
            } 
            .expertise-status{
                display: flex;
                align-items: center;
                justify-content: center;
                position: relative;
                cursor: pointer;
                
                .status-select {
                    padding: 5px 10px;
                    margin: 0;
                    width: fit-content;
                    font-size: 12px;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    border-radius: 20px;
                    border: none;
                    background: transparent;
                    cursor: pointer;
                    outline: none;
                    text-align: center;
                    transition: all 0.2s ease;
                    
                    /* &:focus {
                        box-shadow: 0 0 0 2px var(--primary-color);
                    } */
                    
                    option {
                        color: #000;
                        background: white;
                    }
                }
                
                .status-text {
                    padding: 5px 10px;
                    margin: 0;
                    width: fit-content;
                    font-size: 12px;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    border-radius: 20px;
                    border: none;
                    background: transparent;
                    text-align: center;
                    transition: all 0.2s ease;
                    font-weight: 500;
                }
                
                &[data-status="ongoing"] {
                    .status-select {
                        color : #375DFB;
                        background-color: #2260FF1A;
                    }
                    .status-text {
                        color : #375DFB;
                        background-color: #2260FF1A;
                    }
                }
                &[data-status="completed"] {
                    .status-select {
                        color : #22BB00;
                        background-color: #DCF7DA;
                    }
                    .status-text {
                        color : #22BB00;
                        background-color: #DCF7DA;
                    }
                }
                &[data-status="to_validate"] {
                    .status-select {
                        color : #000;
                        background-color: #E6E6E6;
                    }
                    .status-text {
                        color : #000;
                        background-color: #E6E6E6;
                    }
                }
                &[data-status="draft"] {
                    .status-text {
                        color : #666;
                        background-color: #F5F5F5;
                    }
                }
                
            }
            .expertise-actions{
                display: flex;
                align-items: center;
                justify-content: center;
                
                .open-menu {
                    background: none;
                    border: none;
                    cursor: pointer;
                    font-size: 16px;
                    color: #666;
                    padding: 5px;
                    border-radius: 4px;
                    transition: all 0.2s ease;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    
                    &:hover {
                        color: #333;
                    }
                }
            }
            .expertise-actions-menu{
                display: none;
                position: absolute;
                top: 70%;
                right: 5px                     ;
                background-color: #fff;
                flex-direction: column;
                z-index: 10;
                box-shadow: 0px 0px 9px 0px #3333331A;
                border-radius: 10px;
                width: 280px;
                border: 1px solid #e0e0e0;
                
                .menu-item{
                    display: flex;
                    align-items: center;
                    justify-content: flex-start;
                    gap: 10px;
                    padding: 10px 15px;
                    background-color: #fff;
                    border: none;
                    outline: none;
                    font-size: 14px;
                    font-weight: 500;
                    color: #000;
                    text-decoration: none;
                    text-align: left;
                    transition: all 0.2s ease;
                    img{
                        width: 15px;
                        /* height: 15px; */
                    }
                    &:first-child {
                        border-radius: 10px 10px 0 0;
                    }
                    
                    &:last-child {
                        border-radius: 0 0 10px 10px;
                    }
                    
                    &:hover{
                        background-color: #F6F7FAB2;
                        color : #2260FF;
                        font-weight: 700;
                        img{
                            filter: invert(25%) sepia(99%) saturate(2787%) hue-rotate(222deg) brightness(106%) contrast(105%);
                        }
                    }
                    
                    /* Styles pour les boutons désactivés */
                    &.disabled,
                    &:disabled {
                        opacity: 0.5;
                        cursor: not-allowed;
                        color: #999;
                        position: relative;
                        
                        img {
                            filter: grayscale(100%);
                            opacity: 0.6;
                        }
                        
                        &:hover {
                            background-color: #fff;
                            color: #999;
                            font-weight: 500;
                            
                            img {
                                filter: grayscale(100%);
                                opacity: 0.6;
                            }
                        }
                        
                        /* Permettre les événements de souris pour les tooltips sur les boutons */
                        &:not([href]) {
                            pointer-events: auto;
                        }
                        
                        /* S'assurer que les liens désactivés ne sont pas cliquables */
                        &[href="#"] {
                            pointer-events: none;
                        }
                    }
                }
                .delete-expertise-btn{
                    color : #FF0000;
                    &:hover{
                        color : #FF0000;
                        background-color: #ff00000f;
                        img{
                            filter : none;
                        }
                    }
                    
                    /* Styles spécifiques pour le bouton supprimer désactivé */
                    &.disabled,
                    &:disabled {
                        color: #ff9999;
                        
                        &:hover {
                            color: #ff9999;
                            background-color: #fff;
                            
                            img {
                                filter: grayscale(100%) brightness(1.5);
                                opacity: 0.6;
                            }
                        }
                    }
                }
            }
                         .expertise-actions-menu.open{
                 display: flex;
             }
          }
          
          /* Styles spécifiques pour les expertises client */
          .expertise-item-client {
              grid-template-columns: 2fr 80px 1fr !important;
              
              .expertise-actions {
                  display: none !important;
              }
          }
          
          .expertises-grid-header-client {
              grid-template-columns: 2fr 80px 1fr !important;
          }
     }

    @media (max-width: 1000px) {
        .expertises-grid{
            .expertise-item{
                grid-template-columns: 2fr 1fr 30px;
                .expertise-actions{
                    grid-row: 1/span 2;
                    grid-column: 3;
                }
                .expertise-user{
                    justify-content: flex-start;
                }
            }
            .expertises-grid-header{
                display: none!important;
            }
        }
    }
    

    /* Modal Styles - Styles communs déplacés vers style.css */
    /* Form Styles */
    .form-group {
        margin-bottom: 20px;

        label {
            display: block;
            margin-bottom: 4px;
            color: var(--text-primary);
            font-weight: 500;
            font-size: 0.875rem;
        }

        input[type="text"],
        select {
            width: 100%;
            padding: 8px 12px;
            border: 1px solid var(--border-medium);
            border-radius: 6px;
            font-size: 0.875rem;
            color: var(--text-primary);
            background: var(--bg-primary);
            transition: all 0.3s;
            box-sizing: border-box;

            &:focus {
                outline: none;
                border-color: var(--primary-color);
                box-shadow: 0 0 0 3px var(--primary-focus);
            }
        }

        input[type="text"]::placeholder {
            color: var(--text-light);
        }
    }

    /* Requérant Select Container */
    .requerent-select-container {
        display: flex;
        gap: 10px;
        align-items: center;

        select {
            flex: 1;
        }

        .add-requerent-btn {
            padding: 8px 12px;
            min-width: 40px;
            height: 38px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 6px;
            border: 1px solid var(--border-medium);
            background: var(--bg-primary);
            color: var(--text-primary);
            cursor: pointer;
            transition: all 0.3s;

            &:hover {
                background: var(--bg-secondary);
                border-color: var(--primary-color);
            }

            i {
                font-size: 14px;
            }
        }
    }

    /* Requérant Email Inputs */
    .requerent-email-input {
        width: 100%;
        padding: 8px 12px;
        border: 1px solid var(--border-medium);
        border-radius: 6px;
        font-size: 0.875rem;
        color: var(--text-primary);
        background: var(--bg-primary);
        transition: all 0.3s;
        box-sizing: border-box;

        &:focus {
            outline: none;
            border-color: var(--primary-color);
            box-shadow: 0 0 0 3px var(--primary-focus);
        }
    }

    .add-requerent-email-btn {
        margin-top: 10px;
        padding: 8px 16px;
        font-size: 0.875rem;
    }

    /* Delete Confirmation Styles */
    .delete-confirmation {
        text-align: center;
        padding: 20px 0;

        i {
            font-size: 3rem;
            color: var(--danger-color);
            margin-bottom: 20px;
        }

        p {
            margin: 12px 0;
            color: var(--text-primary);
        }

        .warning-text {
            color: var(--danger-hover);
            font-weight: 500;
            font-size: 0.875rem;
        }

        strong {
            color: var(--text-primary);
            font-weight: 600;
        }
    }

    /* Responsive Design */
    

    /* Animation for status change */
    .expertises-grid {
        .expertise-card.updating {
            opacity: 0.6;
            pointer-events: none;

            .status-select {
                background: var(--bg-tertiary);
                cursor: not-allowed;
            }
        }
    }

    /* Success/Error feedback */
    .status-feedback {
        position: absolute;
        top: 4px;
        right: 4px;
        width: 20px;
        height: 20px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0.75rem;
        color: var(--white);
        opacity: 0;
        transition: opacity 0.3s;

        &.success {
            background: var(--success-color);
            opacity: 1;
        }

        &.error {
            background: var(--danger-color);
            opacity: 1;
        }
    }
}


    @media (max-width: 750px) {
        .dashboard-container{
            padding:15px;
            padding-bottom: 100px;
        }
        
        .dashboard-header {
            flex-direction: column;
            gap: 15px;
            
            .search-filters {
                flex-direction: column;
                width: 100%;
                gap: 10px;
                align-items: stretch;
                
                .requerent-filter {
                    width: 100%;
                    display: flex;
                    
                    select {
                        width: 100%;
                        min-width: auto;
                        flex: 1;
                    }
                }
                
                
            }
        }
       
        
        #createExpertiseBtn {
            width: 50px;
            height: 50px;
            border-radius: 50%;
            padding: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            
            span {
                display: none;
            }
            
            i {
                margin: 0;
                font-size: 18px;
            }
        }
    }
