:root {
    --green-PM: #96c574;
    --blue-PM: rgb(35, 133, 195);
    --grey-PM: #707173;
    --white-PM: #ffffff;
    --red-PM: #f08279;
    --yellow-PM: #ffe065;
    --orange-PM: #ff9c5b;
    --neon-glow: rgba(255, 0, 255, 0.5);
    --gradient-start: #96c574;
    --gradient-end: #2385c3;
    --hover-glow: rgba(255, 0, 255, 0.8);
}

/* Colors as classes */
.green-PM {
    color: var(--green-PM);
}

.blue-PM {
    color: var(--blue-PM);
}

.grey-PM {
    color: var(--grey-PM);
}

.white-PM {
    color: var(--white-PM);
}

.red-PM {
    color: var(--red-PM);
}

.yellow-PM {
    color: var(--yellow-PM);
}

.orange-PM {
    color: var(--orange-PM);
}

/* Backgrounds */
.background-green-PM {
    color: var(--white-PM);
    background-color: var(--green-PM);
}

.background-blue-PM {
    color: var(--white-PM);
    background-color: var(--blue-PM);
}

.background-grey-PM {
    color: var(--white-PM);
    background-color: var(--grey-PM);
}

.background-white-PM {
    color: #000;
    background-color: var(--white-PM);
}

.background-red-PM {
    color: var(--white-PM);
    background-color: var(--red-PM);
}

.background-yellow-PM {
    color: #000;
    background-color: var(--yellow-PM);
}

.background-disabled {
    background-color: #f8f8f8 !important;
}

.background-orange-PM {
    color: #000;
    background-color: var(--orange-PM);
}

.bg-gradient-pm-primary {
    background: linear-gradient(135deg, rgb(150, 197, 116) 0%, rgb(35, 133, 195) 100%);
}

.bg-gradient-pm-secondary {
    background: linear-gradient(135deg, rgb(35, 133, 195) 0%, rgb(150, 197, 116) 100%)
}

/* Borders */
.border-green-PM {
    border: 2px solid var(--green-PM);
}

.border-blue-PM {
    border: 2px solid var(--blue-PM);
}

.border-grey-PM {
    border: 2px solid var(--grey-PM);
}

.border-white-PM {
    border: 2px solid var(--white-PM);
}

.border-red-PM {
    border: 2px solid var(--red-PM);
}

.border-yellow-PM {
    border: 2px solid var(--yellow-PM);
}

/* Buttons */
/* Sub-action button like 'print tracking ticket' */
.button-info-PM {
    background-color: var(--blue-PM);
    color: var(--white-PM);
    box-shadow: 0 0.125rem 0.625rem rgba(108,117,125,0.4),0 0.0625rem 0.125rem rgba(108,117,125,0.5);
}

.button-red-PM {
    background-color: var(--red-PM);
    color: var(--white-PM);
    box-shadow: 0 0.125rem 0.625rem rgba(108,117,125,0.4),0 0.0625rem 0.125rem rgba(108,117,125,0.5);
}

.button-orange-PM {
    background-color: var(--orange-PM);
    color: var(--white-PM);
    box-shadow: 0 0.125rem 0.625rem rgba(108,117,125,0.4),0 0.0625rem 0.125rem rgba(108,117,125,0.5);
}

.button-info-PM:hover {
    color: var(--white-PM);
}

.button-red-PM:hover {
    color: var(--white-PM);
}

.button-orange-PM:hover {
    color: var(--white-PM);
}

/* Validation actions like 'submit' */
.button-primary-PM {
    background-color: var(--green-PM);
    color: var(--white-PM);
}

.button-primary-outline-PM {
    background-color: var(--white-PM);
    color: var(--green-PM);
    border: 1px solid var(--green-PM);
}

.button-primary-outline-PM:hover {
    background-color: var(--green-PM);
    color: var(--white-PM);
}

.button-primary-PM:hover {
    color: var(--white-PM);
}

/* Secondary action like 'previous' */
.button-secondary-PM {
    background-color: var(--white-PM);
    color: var(--grey-PM);
    border: 1px solid var(--grey-PM);
    box-shadow: 0 0.125rem 0.625rem rgba(108,117,125,0.4),0 0.0625rem 0.125rem rgba(108,117,125,0.5);
}

.button-secondary-PM:hover {
    background-color: var(--grey-PM);
    color: var(--white-PM);
}

.button-warning-PM {
    background-color: var(--yellow-PM);
    color: var(--grey-PM);
}

.button-warning-PM:hover {
    background-color: var(--yellow-PM);
    color: var(--grey-PM);
}

.button-info-PM:after, .button-primary-PM:after, .button-warning-PM:after, .button-secondary-PM:after, .button-red-PM:after, .button-orange-PM:after{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background-color: rgba(255,255,255,0.4);
    -webkit-transition: none;
    -moz-transition: none;
    transition: none;
}

.button-info-PM:hover:after, .button-primary-PM:hover:after, .button-warning-PM:hover:after, .button-secondary-PM:hover:after, .button-red-PM:hover:after, .button-orange-PM:hover:after{
    width: 120%;
    background-color: rgba(255,255,255,0);
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

.button-shadow-PM {
    box-shadow: 0 0.125rem 0.625rem rgba(108,117,125,0.4),0 0.0625rem 0.125rem rgba(108,117,125,0.5);
}

.page-title-heading h1 {
    color: var(--blue-PM);
    margin-left: 20px;
    align-self: center;
    margin-bottom: 0;
}

.forms-wizard li.active::after, .forms-wizard li.active::before, .forms-wizard li.active em {
    background: var(--blue-PM) !important;
}

.forms-wizard li.done::after, .forms-wizard li.done::before, .forms-wizard li.done em {
    background: var(--green-PM) !important;
}

.card-header:hover {
    cursor: pointer;
}

.input-error {
    border: 2px solid red;
}

.input-error:focus {
    outline: none !important;
    border: 2px solid red;
    box-shadow: 0 0 10px #719ECE;
}

#ModalRecapDeclenchementStd {
    height: 100%;
    overflow: scroll;
}

.card-att {
    box-shadow: none;
    border-width: 2px;
}

.body-att h5 {
    font-weight: 400;
    font-size: 25px;
    color: var(--grey-PM);
}
/**/

.link-button {
    text-decoration: underline;
    color: var(--blue-PM);
    cursor: pointer;
}

.link-button-error {
    text-decoration: underline;
    color: red;
    cursor: pointer;
}

.fs-25 {
    font-size: 25px;
}

/* Style for menu */
.app-sidebar__heading, .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after, #search-icon-id {
    color: var(--blue-PM) !important;
}

.profil_banner {
    background-image: linear-gradient(to bottom right, #96c574 25%, #2385c3 100%) !important;
}

.bg-pm-gradient {
    background-image: linear-gradient(to bottom right, #96c574 25%, #2385c3 100%) !important;
}

.vertical-nav-menu li a {
    color: var(--grey-PM) !important;
}

.vertical-nav-menu ul>li>.mm-active {
    background-color: var(--blue-PM) !important;
    color: var(--white-PM) !important;
}

.vertical-nav-menu li a:hover {
    background-color: var(--blue-PM) !important;
    color: var(--white-PM) !important;

}

#request_messages {
    padding: 5px;
    border-radius: 5px;
    margin-bottom: 5px;
}

/* End of style for menu */

/* CSS GLOBAL */
.ft-bold {
    font-weight: bold;
}

.text-small-12 {
    font-size: 12px;
}

.text-underline {
    text-decoration: underline !important;
}

.icon-button__badge {
    position: absolute;
    top: -10px;
    right: -10px;
    width: 20px;
    height: 20px;
    background: red;
    color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
}

.align-btn{
    margin-top: 30px;
    margin-left: 30px;
}

/* Chrome, Safari, Edge, Opera */
.input_update_prix::-webkit-outer-spin-button,
.input_update_prix::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
.input_update_prix[type=number] {
    -moz-appearance: textfield;
}

/* CUSTOM CSS POUR PAGE SAV-ABIME_CLIENT */
.btn-valideStatut{
    cursor: pointer;
    color: var(--green-PM);
    font-size:22px;
}

.edit-rma-btn{
    cursor: pointer;
    color: var(--blue-PM);
    font-size:22px;
}

.btn-valideStatut:hover, .edit-rma-btn:hover{
    font-weight: bold;
}

.dataTables_scrollHeadInner{
    width:100% !important;
}
.dataTables_scrollHeadInner table{
    width:100% !important;
}

th {
    text-align: center;
}

td {
    text-align: center;
}

input[type=checkbox] + label {
    color: #3f6ad8;
    font-style: italic;
    font-weight: bold;
}

/* CUSTOM CSS POUR PAGE ATT-ATT_CLIENT */

.att_urgent {
    background-color: crimson !important;
    color:white !important;
}
.custom_btn{
    cursor: pointer;
    color: #3f6ad8;
    font-size: 26px;
    font-weight: bolder;
}

.custom_validate_serial_btn{
    cursor: pointer;
    color: var(--green-PM);
    font-size: 26px;
    border: none !important;
    background-color: transparent;
}

.custom_validate_serial_btn:hover{
    font-weight: bolder;
}

.custom_modify_serial_btn{
    cursor: pointer;
    color: var(--red-PM);
    font-size: 26px;
    border: none !important;
    background-color: transparent;
}

.custom_modify_serial_btn:hover{
    font-weight: bolder;
}

.extra_padding{
    padding:8px;
}

#all_container{
    display: flex;
    flex-wrap: wrap;
}

.extra_padding-top{
    padding-top: 10px !important;
}

.extra_padding-bottom{
    padding-top: 10px !important;
}

.custom_icon{
    font-size: 38px;
    font-weight: bolder;
    cursor:pointer;
    color:black;
}

.custom_icon_trash{
    font-size: 24px;
    font-weight: bolder;
    cursor:pointer;
    color:#ff6767;
}

#att_client_form_saisie_rapide{
    width:20px;
    float:right;
}

.custom-flex{
    flex-wrap: wrap;
}

.tpe_inconnu_options{
    display: none;
}

/* Table des états de l'ATT CLIENT */
/*#att_historique_container {*/
/*    height: 40px;*/
/*    width: 100%;*/
/*    overflow-y: auto;*/
/*}*/

.table_etat_att {
    cursor: pointer;
    margin-top: 22px;
}

.table_data_clicked {
    background-color: #3ac47d;
    color:white;
}

#flexy_wrapper{
    display: flex;
}

.flexy_flex {
    flex-wrap: wrap;
}

.info_livraison_container{
    display: flex !important;
}

.header_custom_design{
    text-underline: #0a66b7;
}

.icon_att_padding{
    padding: 0 10px 0 10px;
    cursor: pointer;
}

.checkbox_tpe_inconnu {
    width:20px;
    float:left;
    cursor: pointer;
}

#tpe_inconnu_label{
    padding:8px;
}

.custom_remove_btn{
    font-size: 20px;
    font-weight: bolder;
    cursor:pointer;
    color:red;
    margin: 5px 5px 5px 14px;
}

.custom_remove_btn:hover{
    text-decoration: none;
    color:red;
}

.extra_mat_inconnu_line{
    margin: 2px 0;
}

#checked_option_label{
    font-weight: bold;
    color: #3ac47d;
}

.align_label label , .checkbox_saisie_rapide{
    padding: 7px 0 0 4px !important;
}

.checkbox_saisie_rapide {
    width:20px;
    float:left;
    cursor: pointer;
}


/* PAGE ATT REVENDEUR */
.service{
    margin-right: 20px;
}

.shadow {
    box-shadow: rgba(100, 100, 111, 0.2) 0 7px 29px 0;
}

.custom_btn_1{
    font-size: 26px;
    font-weight: bolder;
    cursor:pointer;
    color:#3f6ad8;
    margin-bottom: 20px;
}

.custom_btn_1_white{
    font-size: 26px;
    font-weight: bolder;
    cursor:pointer;
    color:white;
    float:right;
}

#list_att_ouvert{
    font-weight: bold;
    color: #3ac47d;
}

.voir_fiche_att , .voir_fiche_CC, .voir_fiche_reception{
    font-size: 26px;
    color:#495057;
}

.print_CC {
    font-size: 20px;
    margin-left: 2px;
}

.btn_icon_cf {
    display: flex;
}

.btn_icon_cf a {
    padding: 10px;
    border-radius: 5px;
    transition: all 0.5s ease-out;
    color: white;
    font-size: 18px;
}

.btn_icon_cf a:hover {
    background-color: rgba(225, 225, 255, 0.3);
}

.tab_info_commande tbody tr th {
    border-right: 1px solid rgba(0,0,0,0.08);
}

.voir_fiche_att_alternate{
    font-size: 26px;
    color:white;
}

.printed_CC{
    font-size: 26px;
    font-weight: bold;
    color:#3ac47d;
}

.voir_fiche_CC_color-change{
    font-size: 26px;
    color:white;
}

.voir_fiche_att:hover{
    color: #3ac47d;
}

.voir_fiche_reception:hover{
    color: #3ac47d;
}

.voir_fiche_CC:hover{
    color: #3ac47d;
}

.print_CC:hover{
    color:#3f6ad8;
}

.around {
    justify-content: space-around;
}

#att_client_informations_livraison_search_liste_revendeur, #att_client_informations_livraison_search_grand_compte {
    cursor: pointer !important;
}

.arrow_right:hover{
    font-weight: bolder;
    cursor: pointer;
}

.arrow_left:hover{
    font-weight: bolder;
    cursor: pointer;
}

.save_btn{
 margin: 15px auto;
}

/* PAGE ATT REVENDEURS */
.input_selected_revendeur{
    margin-top: 10px;
}

#hidden_contact_options{
    display: none;
}

#hidden_contact_fonction_options{
    display: none;
}

.service{
    margin-bottom: 3px !important;
}

#btn_fiche_maj_client{
    margin: 0.5rem auto;
}

/* Cursor Pointer pour les champs Symfony Form */
.cursor_pointer{
    cursor: pointer;
}

.att_cloture{
    margin-top: 12px;
    font-size: 1rem;
    text-align: center;
}

.att_cloture_a_rappeler{
    margin-top: 12px;
    font-size: 1rem;
    text-align: center;
}

/* Search BAR DataTables */
#table_att_clotures_filter{
    text-align: left !important;
    float: left !important;
}

#table_att_en_cours_filter{
    text-align: left !important;
    float: left !important;
}

/* Filtre numero de resultats DataTables */
#table_att_clotures_length{
    text-align: right !important;
    float: right !important;
}

#table_att_en_cours_length{
    text-align: right !important;
    float: right !important;
}

/* Input DropDown avec input Dynamique */
.select2-container--default .select2-selection--single .select2-selection__rendered {
    font-size: 1rem !important;
    color:#495057 !important;
    font-weight: 600;
}

.select2-container{
    width: 100% !important;
}

.select2-container--default .select2-selection--single{
    padding:6px;
    height: 37px;
    font-size: 1.2em;
    position: relative;
}

#listeTech{
    margin-top: 12px;
    margin-bottom: 12px;
}

/* Page ATT Revendeur en Cours */
.buttons-excel{
    background: transparent !important;
    border: none !important;
    cursor: pointer;
    float: right;
}

/* Page Commande Client en Attente de Validation */

.table_commande_client_header{
    background-color: #eeeeee;
}

.commande_urgente{
    background-color: red !important;
    color:white;
}

#table_commande_client_mat_a_scanner_length{
    display: none !important;
}

#table_commande_client_mat_a_scanner_filter{
    display: none !important;
}

.header-table-mat_non_scanne{
    background-color: #e9ecef;
    color: black;
    font-weight: bold;
}

.mat_non_scanne{
    background-color: red;
    color: white;
    font-weight: bold;
}

.mat_scanne{
    background-color: #2e9d64;
    color: white;
    font-weight: bold;
}

.cc_paused {
    background: url('../assets/images/pause.png') no-repeat center center;
}

/* Un peu de responsiveness */
@media only screen and (min-width: 1200px) {
    #all_container{
        display: flex;
        flex-wrap: wrap;
    }
}

@media only screen and (max-width: 1080px) {
    #all_container{
        display: flex;
        flex-wrap: wrap;
    }

    #BoxSearchRevendeur{
        display: flex;
        flex-wrap: wrap;
    }
}

.app-page-title{
    padding: 10px;
    margin: -30px -30px 15px;
}

.app-page-title h1{
    font-size: 2rem;
}

/* Preparation de commande  */
.empty_data_table{
    font-weight: bold;
    color: red;
}

.error_mat_scan{
    color: red;
    font-weight: bold;
}

.numero_serie_span{
    color: #198cf0;
}

.btn-ccm-container{
    float: right;
}

.btn-save-choice-ccm {
    margin-right: 5% !important;
}

.info_mat_scanne{
    font-weight: bold;
}

label[for="update_materiel_ccm_scanne_select_materiel_ccm_0"] {
    display: none;
}

label[for="update_materiel_ccm_scanne_select_materiel_ccm_1"] {
    display: none;
}

/* Pages Reception */

.animation {
    animation: blinker 2.5s cubic-bezier(.5, 0, 1, 1) infinite alternate;
}
@keyframes blinker { to { opacity: 0; } }

.form_person_edit{
    cursor: not-allowed;
}

#historique_table_wrapper {
    overflow-x:auto;
}

.materiel-agree{
    color:#3ac47d;
    font-weight: bold;
}
.materiel-non-agree{
    color:red;
    font-weight: bold;
}

.scanne{
    color:#3ac47d;
    font-weight: bold;
}

#error_icon{
    font-size: 60px !important;
    font-weight: bold !important;
    transform: rotate(341deg) !important;
}

.add_materiel_btn{
    font-size: 26px;
    font-weight: bolder;
    cursor:pointer;
    color:#3ac47d;
}

.delete_materiel_ajoute {
    font-size:26px;
    color:red;
    cursor:pointer;
}


.materiel_scanne_valide_date_entree {
    font-weight: bold;
    color:green;
}

.materiel_scanne_valide_numero_serie {
    background-color: green;
    color:white;
    font-weight: bold;
}

.attente_validation_administrative {
    color: #d92550;
    font-weight: bold;
}

.reception_en_cours {
    color: #f7b924;
    font-weight: bold;
}

.reception_cloturee{
    color: #3ac47d;
    font-weight: bold;
}

/* GESTION DES LOGICIELS */
.add_logiciel_btn{
    font-weight: bold !important;
    font-size: 16px !important;
}

#add_logiciel_telech_tarif_logiciel_telech{
    margin: auto !important;
}

.form-control{
    cursor: pointer;
}

.custom_upload{
    font-size: 22px !important;
    color: black !important;
}

.alert_logiciel_importe{
    font-weight: bold;
    color: red;
    text-align: center;
}

.alert_logiciel_importe_ok{
    font-weight: bold;
    color: green;
    text-align: center;
}

.search_logiciel_btn{
    margin: 0;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.logiciels_manquants{
    margin-bottom: 5px;
    padding:4px;
}

.voir_detail_fiche{
    margin-left: 20px;
}

.cloturer_fiche{
    margin: 10px auto;
}

#header_tarif_generale{
    width: 150px !important;
}

.custom_btn_file{
    font-size: 18px !important;
    color: black !important;
}

#pdf_table{
    border:2px solid red;
}

.mirror {
    transform: scaleX(-1);
    -moz-transform: scaleX(-1);
    -webkit-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
}

/* STD */
.td-underline-blue {
    text-decoration: underline;
    text-decoration-color: #3f6ad8;
}

/* Envoi Constructeur AVT */
.custom_xlsx_file_download{
    font-size: 26px !important;
    /*color: black !important;*/
}

/* STOCK */
.clickable-serial:hover{
    cursor: pointer;
    color: #96c574 !important;
    text-decoration: underline !important;
}

.highlight {
    background-color: yellow;
    font-weight: bold;
}

.custom_sticky{
    position: sticky;
    top:60px;
    z-index: 100;
    margin-bottom: 15px;
    margin-left: -30px;
    margin-right: -30px;
    padding-left: 30px;
    padding-right: 30px;
    background-color: #f8f9fa;
}

.custom-sticky-header-table-facturation{
    position: sticky;
    top:0;
    z-index: 1;
    background-color: #0B7FC7;
}

.custom-sticky-header-table-facturation-fdm{
    position: sticky;
    top:160px;
    z-index: 1;
    background-color: #0B7FC7;
}

#global_overview_table_length {
    display: none !important;
}

.billing-details-btn :hover {
    cursor: pointer;
    font-weight: bold;
    color:var(--white-PM);
    background-color: #0b0c0d;
}

.custom_color_select_info{
    background-color: #d4edfc;
}

.custom_color_select_success{
    background-color: #d0eec6;
}

#scroll_to_top {
    display: inline-block;
    background-image: linear-gradient(to bottom right, #96c574 25%, #2385c3 100%) !important;
    width: 50px;
    height: 50px;
    text-align: center;
    border-radius: 4px;
    position: fixed;
    bottom: 30px;
    right: 30px;
    transition: background-color .3s,
    opacity .5s, visibility .5s;
    opacity: 0;
    visibility: hidden;
    z-index: 1000;
}
#scroll_to_top::after {
    font-weight: normal;
    font-style: normal;
    font-size: 2em;
    line-height: 50px;
    color: #fff;
}
#scroll_to_top:hover {
    cursor: pointer;
    background-color: #333;
}
#scroll_to_top:active {
    background-color: #555;
}
#scroll_to_top.show {
    opacity: 1;
    visibility: visible;
}

/* Page  */

.custom_margin{
    margin: auto 20px auto 20px;
}

.toggle_switch_param_label[data-on='Actif'] {
    color: green;
}

/* Facturation */
.bg-signalement-facture {
    background-color: #e99e9a;
}

.td-color-pour-stock-externe {
    background-color: #869edd;
}

.anchor-facturation {
    scroll-margin-top: 250px;
}

/* reset_mdp */
#password-strength-status {
    padding: 5px 10px;
    color: #FFFFFF;
    border-radius: 4px;
    margin-top: 5px;
}

.medium-password {
    background-color: #b7d60a;
    border: #BBB418 1px solid;
}

.weak-password {
    background-color: #ce1d14;
    border: #AA4502 1px solid;
}

.strong-password {
    background-color: #12CC1A;
    border: #0FA015 1px solid;
}

/* Menu Puces */
.chip-icon {
    background: url(../images/chip.png);
    background-position: center;
    background-repeat: no-repeat;
    width: 34px !important;
    height: 34px !important;
}

.sim_filter_system {
    align-items: center;
    padding: 10px;
}

.sim_filter_buttons {
    position: absolute;
    right: 10px;
    align-items: center;
    justify-content: space-between;
}

#table_liste_puces_paginate {
    display: block;
    float: left;
}

#table_liste_puces_length {
    display: block;
    float: right;
    margin-top: 10px;
}

#table_liste_puces_filter { display: none; }

#table_liste_puces_filter input{
    width: 100%;
}

.icon_pack {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.dashboard_icon {
    font-size: 60px;
}

.export_icon {
    font-size: 30px;
}

.synchro, .histo {
    background-color: transparent;
    border: none;
}

.activate_modification {
    background-color: transparent;
    border: none;
}

/* Page android */
.card_profile {
    padding: 20px;
}

.form_profile_title {
    font-weight: bold;
    font-size: 14px;
}

.card_profile_data {
    padding: 15px;
}

.btn_form_profile {
    flex-direction: row;
    justify-content: space-around;
    padding: 10px;
}

#bloc_profile_data {
    display: none;
}

.borderless{
    background: transparent;
    border: none;
}

/* Input form Style */
.input_wrap > input[type="text"] {
    border: 2px solid var(--grey-PM);
    border-radius: 5px;
    color: var(--grey-PM);
    font-size: 14px;
    padding-left: 20px;
    box-shadow: none;
    align-self: center;
}

.input_wrap > input:focus + label, .input_wrap > input:valid + label {
    font-size: 12px;
    color: var(--grey-PM);
    top: -10px;
    left: 10px;
    background: #ffffff;
    padding: 0px 5px 0px 5px;
}

.input_wrap {width:auto; height:auto; position:relative;
}

.input_wrap label {
    font-family:arial;
    font-size:16px;
    color: var(--grey-PM);
    padding: 5px;
    background-color: white;
    position: absolute;
    top: -17px;
    left: 10px;
    transition:0.2s ease all;
    -moz-transition:0.2s ease all;
    -webkit-transition:0.2s ease all;
    pointer-events: none;
}

.form_profile_text {
    font-family:arial;
    font-size:16px;
    color: var(--grey-PM);
    padding: 5px;
}

.input_wrap > input[type="text"]:focus {outline:none;}

/* Checkbox */
.toggle-switch input[type="checkbox"] {
    position: relative;
    top: 5px;
    width: 40px;
    height: 20px;
    -webkit-appearance: none;
    appearance: none;
    background: red;
    outline: none;
    border-radius: 2rem;
    cursor: pointer;
    box-shadow: inset 0 0 5px rgb(0 0 0 / 50%);
}

.toggle-switch input[type="checkbox"]::before {
    content: "";
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    transition: 0.5s;
}

.toggle-switch input[type="checkbox"]:checked::before {
    transform: translateX(100%);
    background: #fff;
}

.toggle-switch input[type="checkbox"]:checked {
    background: #00ed64;
}
/* End Checkbox */

.form_profile_checkbox_inline label{
    cursor: pointer;
    font-family:arial;
    font-size:16px;
    padding: 5px;
    color: var(--grey-PM);
}

.flex_column {
    display: flex;
    flex-direction: column;
}

.img_preview {
    display: flex;
    justify-content: center;
    width: 150px;
    height: 150px;
    margin: 5px;
    border: 1px solid var(--grey-PM);
    align-items: center;
    border-radius: 5px;
}

.img_preview img{
    max-width: 100%;
    max-height: 100%;
    margin: auto;
    border-radius: 5px;
}

.color-preview {
    width: 36px;
    height: 36px;
    border-radius: 5px;
    margin-left: 5px;
}

.display_none {
    display: none;
}

.display_block {
    display: block;
}

.w-10 {
    width: 10%;
}

.w-15{
    width: 15%;
}

.w-20 {
    width: 20%;
}

.w-30 {
    width: 30%;
}

.w-35 {
    width: 35%;
}

.w-40 {
    width: 40%;
}

.w-60 {
    width: 60%;
}

.w-70 {
    width: 70%;
}

.pastille {
    width: 24px;
    height: 24px;
    line-height: 24px;
    margin: 5px 5px 0;
    transition: all .2s;
    opacity: .7;
    display: inline-block;
    border-radius: 30px;
}

.pastille-sm {
    width: 10px;
    height: 10px;
    line-height: 24px;
    margin: 5px 5px 0;
    transition: all .2s;
    opacity: .7;
    display: inline-block;
    border-radius: 30px;
}

.orange {
    background-color: #f7b924;
}

.rouge {
    background-color: #d92550;
}

.verte{
    background-color: #3ac47d;
}

.grise {
    background-color: #6c757d;
}

.rotate180 {
    rotate: 180deg;
}


/* Page Transatel Sim */
.reseller_scrollable_list {
    border-right: 2px solid var(--green-PM);
}

.selectable-list-item {
    padding: 5px;
}

.selectable-list-item:hover {
    background-color: var(--blue-PM);
    color:white;
}

.selected-reseller-item{
    background-color: var(--blue-PM);
    color:white;
}

.width_adapt {
    width: fit-content;
}

.icon-modify-reseller-group {
    font-size: 16px;
    color: black;
}

.btn_update_group:hover > .icon-modify-reseller-group {
    font-size: 16px;
    color: var(--white-PM);
}

.selectable-list-item{
    margin-bottom: 5px;
}

#verify_sim_integrity {
    background-color: transparent;
    border: none;
    margin: auto;
    text-align: center;
}

.pulsate {
    animation: pulsate 0.5s ease-out;
}

@keyframes pulsate {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.5);
    }
    100% {
        transform: scale(1);
    }
}

.btn_export_datatable {
    border: none !important;
    background: none !important;
}

.btn_export_datatable:hover {
    background: #f2f7f4 !important;
}

.unlock {
    font-size: 32px;
    font-weight: bold;
}

.excel_export {
    font-size: 42px;
    font-weight: bold;
    color: rgba(234, 240, 246, 0);
    background: url('../images/excel.png') center;
}

.notifications-box .badge {
    line-height: 14px;
}

.notifications-box .vertical-without-time .vertical-timeline-element-content {
    margin-left: 12px;
}

.notifications-box .notification_item {
    /*background: #f4f8ff;*/
    padding: 10px 0 10px 0;
    margin-left: 5px;
    border-bottom: 1px solid #f4f8ff;
}

.read_item {
    background: #e8ffe2;
}

.no_read_item {
    background: #ffecec;
}

#table_liste_puces_admin_view_wrapper {
    overflow-x: scroll;
}

#title_reseller_list_media {
    display: none;
}

.select_reseller_media, .select_group_media {
    display: none;
}

/* A SUPPRIMER --- */
/*.select_group_media {
    display: flex;
    justify-content: space-between;
    padding: 20px;
}*/
/* A SUPPRIMER --- */

.display_media {
    display: flex;
}

.btn_action {
    margin: 4px;
}

@media (max-width: 1700px) {

    #title_reseller_list {
        display: none;
    }

    .card_media {
        min-width: auto;
    }

    #title_reseller_list_media {
        display: block;
    }

}

@media (max-width: 1200px) {

    #search-input, #list-container, .scroll_media {
        display: none;
    }

    .select_reseller_media, .reseller_scrollable_list{
        display: block;
    }

    .select_group_media {
        display: flex;
        justify-content: space-between;
        padding: 20px;
    }

    .display_media {
        flex-direction: column;
    }

    .reseller_scrollable_list {
        max-width: 100%;
        border-right: none;
    }

    .div_puces_transatel {
        flex: 0 0 90% !important;
        max-width: 100% !important;
    }

    .body_group {
        min-width:94vw;
    }

}

/* Quick CC */
.quick_cc_img_cat {
    height: 110px;
    width: 120px;
    margin: 30px;
}

.quick_cc_img_mat {
    height: 100px;
    width: 100px;
    margin: 30px;
}

#table_quick_cc_mats_paginate {
    display: none;
}

.quick_cc_confirm_pic img {
    width: 150px;
    margin: 0 auto;
    display: block;
}

.quick_cc_confirm_pic figcaption {
    font-weight: bold;
}

.quick_cc_confirm_msg {
    display: grid;
    text-align: center;
}

.radius-1 {
    border-radius: 10px;
}

/******** REFERENCE IMAGES MODAL ********/

#materialImagesModal .modal-dialog{
    overflow-y: initial !important
}
#materialImagesModal .modal-body{
    height: 80vh;
    overflow-y: auto;
}

#image-preview {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    padding-top: 20px;
}

.image-container {
    width: fit-content;
    text-align: center;
    border: 1px solid lightgrey;
    border-radius: 1px;
    padding: 5px;
    margin: 3px;
}

.image-container:hover {
    border: 1px solid var(--green-PM);
    cursor: pointer;
}

.image-container p{
    border-top: 1px solid lightgrey;
    padding-top: 10px;
}

#pagination {
    margin-top: 15px;
    text-align: center;
}

#pagination a {
    display: inline-block;
    margin: 0 4px;
    font-size: 20px;
    color: var(--blue-PM);
}

.modal-80 {
    max-width: 80% !important;
}

.drag-drop-container #drop-area {
    width: 100%;
    height: 80px;
}

#upload-image-preview {
    display: flex;
    width: 100%;
    overflow-x: scroll;
    padding: 10px;
}

#upload-image-preview img {
    width: 100px;
}

.separator {
    width: 100%;
    height: 1px;
    background-color: lightgrey;
    margin-top: 25px;
    margin-bottom: 25px;
}

.image-container img {
    max-height: 150px;
}

.active_page {
    font-weight: bold;
    color: var(--green-PM) !important;
}

/******** END REFERENCE IMAGES MODAL ********/

.tab_commande th {
    position: sticky;
    top: 60px;
    background: white;
    z-index: 10;
}

.tab_commande, .tab_commande th, .tab_commande td {
    border: 1px solid rgba(0,0,0,0.08);
    border-collapse: collapse;
}

.tab_commande th, .tab_commande td {
    padding: 8px;
    text-align: left;
}

.btnActionCf {
    color: #495057;
}

.btnActionCf:hover {
    text-decoration: none;
}

.rechFournisseurDiv {
    width: 100%;
}

.searchContainer {
    display: flex;
    align-items: center;
    gap: 10px;
}

.searchContainer input[type='text'] {
    flex: 1;
    padding: 8px;
    border: 1px solid #ced4da;
    border-radius: 5px;
    outline: none;
}

.searchContainer button {
    padding: 8px 12px;
    border: none;
    border-radius: 5px;
    color: white;
    cursor: pointer;
    transition: background-color 0.3s;
}

.uniformThWidth tbody th {
    width: 250px;
}

.uniformThWidth select {
    width: 100%;
    cursor: pointer;
    padding: .375rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: .25rem;
}

#commande_fournisseur_dateLivraisonEstimee {
    gap: 10px;
}

.classNameButtonSearch {
    padding: 8px 12px;
    border: none;
    border-radius: 5px;
    color: white;
    cursor: pointer;
    transition: background-color 0.3s;
}

#liste_referentiel .card {
    height: 100%;
    max-height: 130px;
    overflow: hidden;
}

#liste_referentiel .card-body {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.td_referentiel {
    cursor: pointer;
    transition: background-color 0.3s, box-shadow 0.3s;
}

.td_referentiel:hover {
    background-color: #f1f1f1;
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
}

.td_referentiel .card-title {
    font-size: 0.85rem;
}

.td_referentiel .card-text {
    font-size: 0.8rem;
}

.mat_item {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.active_page {
    color: white !important;
    background-color: var(--blue-PM);
}

.listeRefPagination .paginationCustom{
    display: flex;
    gap: 10px;
    justify-content: center;
}

.listeRefPagination .paginationCustom button {
    border-radius: 5px;
    color: black;
}

.flash {
    animation: flashAnimation 0.5s infinite alternate;
}

@keyframes flashAnimation {
    from {
        opacity: 1;
    }
    to {
        opacity: 0.5;
    }
}

.td_referentiel .imgMateriel {
    width: 50px;
    margin: auto;
}

.deleteButton, .addButton {
    width: 40px;
    height: 40px;
    line-height: 0;
    position: relative;
}

.deleteIcon, .addIcon{
    font-size: 20px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

#clientInfoForm {
    display: flex;
    flex-direction: column;
    gap: 25px
}

.flash-underline {
    animation: flashUnderline 1s infinite;
}

@keyframes flashUnderline {
    0% {
        text-decoration: none;
    }
    50% {
        text-decoration: underline;
    }
    100% {
        text-decoration: none;
    }
}

.custom-check-PM {
    color: var(--green-PM);
    font-size: 24px;
    font-weight: bold;
}

.custom-no-check-PM {
    color: var(--red-PM);
    font-size: 24px;
    font-weight: bold;
}

.btn {
    transition: filter 0.3s ease;
}

.btn:hover {
    color: white;
    filter: brightness(0.85);
}

.fixed-message {
    position: absolute;
    top: 60px;
    left: 280px;
    z-index: 12;
    justify-content: left;
    text-align: center;
    width: 100%;
    padding: 10px;
}

.div_to_column div {
    width: 60%;
}

.div_to_column div input, .div_to_column div select {
    width: 100%;
}

#message_fixe_form_save {
    margin-left: 15px;
    width: 36%;
}

@media only screen and (max-width: 1200px) {
    .div_to_column {
        flex-direction: column;
    }

    .div_to_column div input, .div_to_column div, #message_fixe_form_save {
        width: 100%;
    }
}

#svg2{
    width: 380px;
    position: absolute;
    top: -15%;
    left: 50%;
    margin-left: -190px;
}

#Sparkle > *{
    stroke-width:3;
    stroke: inherit;
    stroke-linejoin: round;
    stroke-linecap: round;
    stroke-miterlimit: 3;
    stroke-dashoffset: inherit;
    stroke-dasharray: 10, 150;
    fill: none;
    vector-effect:non-scaling-stroke;
    transform: inherit;
}

use.s1{animation: anim1 9.2s infinite;}
use.s2{animation: anim1 7.6s infinite;}
use.s3{animation: anim1 8.7s infinite;}
use.s4{animation: anim1 11s infinite;}

use.c1 {stroke: #11D7CD;}
use.c2 {stroke: #FDE91C;}
use.c3 {stroke: #02C2EF;}
use.c4 {stroke: #DBE5D6;}
use.c5 {stroke: #22EEBD;}
use.c6 {stroke: #F33D3B;}

use.d1  {animation-delay: -0.1s;}
use.d2  {animation-delay: -0.5s;}
use.d3  {animation-delay: -1.1s;}
use.d4  {animation-delay: -2.3s;}
use.d5  {animation-delay: -3.5s;}
use.d6  {animation-delay: -4.1s;}
use.d7  {animation-delay: -4.9s;}
use.d8  {animation-delay: -5.2s;}
use.d9  {animation-delay: -5.9s;}
use.d10 {animation-delay: -7.2s;}
use.d11 {animation-delay: -7.8s;}
use.d12 {animation-delay: -8.0s;}
use.d13 {animation-delay: -8.9s;}
use.d14 {animation-delay: -9.2s;}
use.d15 {animation-delay: -9.5s;}
use.d16 {animation-delay: -10.1s;}

@keyframes anim1 {
    0%    {stroke-dashoffset: 150; }
    20%   {stroke-dashoffset: 30; }
    100%   {stroke-dashoffset: 30; }
}

#HNY{
    animation: txtanimg 18s -1s infinite;
    vector-effect: non-scaling-stroke;
}

#HNY path{
    stroke-width:3;
    stroke: inherit;
    stroke-linejoin: round;
    stroke-linecap: round;
    stroke: #D81C3E;
    stroke-miterlimit: 3;
    fill: none;
    vector-effect:non-scaling-stroke;
    transform: inherit;
    stroke-dashoffset: 100;
    stroke-dasharray: 0.1, 100000;
    animation-fill-mode: none;
    animation: txtanim 18s infinite;
}

path#t1{animation-delay: 0.0s;}
path#t2{animation-delay: 3.2s;}
path#t3{animation-delay: 4.0s;}
path#t4{animation-delay: 4.8s;}

@keyframes txtanim {
    0%   {stroke-dasharray: 0, 100000;}
    35%  {stroke-dasharray: 940, 100000; }
    65%  {stroke-dasharray: 940, 100000; }
    65.5%{stroke-dasharray: 0, 100000; }
}
@keyframes txtanimg {
    0%    {opacity: 1 }
    68%   {opacity: 1 }
    71%   {opacity: 0 }
    100%  {opacity: 0 }
}

path#n1{animation-delay: 12.0s;}
path#n2{animation-delay: 12.4s;}
path#n3{animation-delay: 12.8s;}
path#n4{animation-delay: 13.2s;}

@keyframes numanim {
    0%   {stroke-dasharray: 0, 100000;}
    5%  {stroke-dasharray: 200, 100000; }
    55%  {stroke-dasharray: 200, 100000; }
    55.5%{stroke-dasharray: 0, 100000; }
}

/* Collapse */
.collapse-content {
    display: none;
}

.toggle-btn {
    display: inline-block;
}

#search_form input[type="checkbox"] {
    margin: 10px;
}

.no-results {
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    color: #888;
    margin-top: 20px;
}


#qrCode {
    margin: 30px auto;
    width: 260px;
}

.search-btn {
    color: white;
    border: 1px solid #ccc;
    transition: background-color 0.3s ease-in-out;
}

/* Default colors */
#search_option_1 + label {
    background-color: var(--green-PM);
}

#search_option_2 + label {
    background-color: var(--blue-PM);
}

/* Active state */
.search-btn.active {
    opacity: 0.8;
    border: 2px solid black;
}

/* Partner Support */
.support-status:hover {
    background-color: var(--blue-PM);
    color: white;
}

.active-open-support-status {
    background-color: var(--yellow-PM);
    color: black;
}

.active-closed-support-status {
    background-color: var(--green-PM);
    color: white;
}

#chart-container {
    width: 900px;
    height: 500px;
    margin: 10px auto;
}
canvas {
    width: 100% !important;
    height: 100% !important;
}

#chart {
    max-width: 1000px;
    margin: 0px auto;
}

.seuil-container {
    max-width: 700px;
}

#seuil {
    cursor: pointer;
}

.seuil-container label, .seuil-container input {
    display: block;
    margin-bottom: 10px;
}

#valeur-seuil {
    font-weight: bold;
}

.td-disabled {
    pointer-events: none;
    opacity: 0.6;
    cursor: not-allowed;
}


.top-left-search {
    float: left;
    margin-bottom: 10px;
}

/*Halloween spider*/

/* ----------- ANIMATIONS ----------- */
@keyframes A-anima {
    0% { transform: rotate(75deg); }
    50% { transform: rotate(-70deg); }
}
@keyframes B-anima {
    0% { transform: rotate(10deg); }
    50% { transform: rotate(120deg); }
    80% { transform: rotate(20deg); }
}
@keyframes C-anima {
    0% { transform: rotate(10deg); }
    50% { transform: rotate(90deg); }
    80% { transform: rotate(10deg); }
}

/* L’araignée descend et s’arrête */
@keyframes spider-anima {
    0% { top: -100px; }
    100% { top: 10%; }
}

/* La toile descend et s’arrête */
@keyframes spider-web-anima {
    0% { height: 0; top: -100px; }
    100% { height: 10vh; top: 0; }
}

/* ----------- SPIDER WEB ----------- */
.spider-web {
    animation: spider-web-anima 4s ease-out forwards;
    background-color: #000;
    border-radius: 4px;
    height: 0;
    left: 70%;
    position: absolute;
    transform: translateX(-50%);
    width: 1px;
    z-index: 1040;
}

/* ----------- SPIDER CONTAINER ----------- */
.halloween-container {
    animation: spider-anima 4s ease-out forwards; /* ❗ descente unique */
    position: absolute;
    left: 70%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 11;
}

/* ----------- EYES ----------- */
.halloween-container .eye {
    background-color: #fff;
    height: 1px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
}
.halloween-container .eye-left { left: 6px; }
.halloween-container .eye-right { right: 6px; }

/* ----------- ARMS ----------- */
.right {
    transform: rotateY(180deg);
}
.arm-container .arm {
    background-color: #000;
    border-radius: 4px;
    height: 4px;
    position: absolute;
    transform-origin: center left;
    width: 15px;
}
.arm-container .A {
    animation: A-anima 3s infinite ease-in-out;
    transform: rotate(75deg);
}
.arm-container .A:nth-child(2) { animation-delay: -0.3s; }
.arm-container .A:nth-child(3) { animation-delay: -0.6s; }
.arm-container .A:nth-child(4) { animation-delay: -0.5s; }

.arm-container .B {
    animation: B-anima 3s infinite ease-in-out;
    left: calc(100% - 2px);
    transform: rotate(10deg);
}
.arm-container .C {
    animation: C-anima 3s infinite ease-in-out;
    left: calc(100% - 2px);
    transform: rotate(10deg);
}

/* ----------- BODY ----------- */
.spider-body,
.spider-body:before {
    background-color: #000;
    border-radius: 50%;
    position: absolute;
}
.spider-body {
    height: 20px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 20px;
}
.spider-body:before {
    content: '';
    height: 15px;
    left: 2.5px;
    top: -5px;
    width: 15px;
    z-index: -99;
}

#halloween-message {
    display: none;
    position: fixed;
    top: 40px;
    left: 50%;
    transform: translateX(-50%);
    color: #ffb84d;
    font-family: 'Creepster', cursive;
    font-size: 2.8em;
    letter-spacing: 3px;
    text-align: center;
    white-space: nowrap;
    z-index: 9999;
    text-shadow:
            0 0 8px #ff6600,
            0 0 16px #ff3300,
            0 0 32px #ff6600,
            0 0 60px #ff3300;
    opacity: 0;
    animation: none;
    user-select: none;
    pointer-events: none;
}

@keyframes halloween-fade-in {
    0% { opacity: 0; transform: translate(-50%, -20px); }
    100% { opacity: 1; transform: translate(-50%, 0); }
}

@keyframes halloween-glow {
    0% {
        text-shadow:
                0 0 5px #ff6600,
                0 0 15px #ff3300,
                0 0 25px #ff6600;
    }
    100% {
        text-shadow:
                0 0 15px #ffaa00,
                0 0 30px #ff6600,
                0 0 60px #ff3300;
    }
}

@keyframes halloween-float {
    0%, 100% { transform: translate(-50%, 0); }
    50% { transform: translate(-50%, -6px); }
}

svg {
    animation: web-sway 5s ease-in-out infinite alternate;
}
@keyframes web-sway {
    0% { transform: rotate(0deg) scale(1); }
    100% { transform: rotate(1deg) scale(1.02); }
}
