/* ==========================================================================
   BOUTONS D'ACTION (SIDEBAR ACTIONS)
   Design System modulaire Solum
   ========================================================================== */

/* Cadre géométrique de référence pour la sidebar actions (20px haut/bas, 13px côtés) */
.sidebar-actions,
#sideActions {
    padding: var(--solum-sidebar-header-margin, 20px) var(--solum-sidebar-edge-padding, 13px) var(--solum-sidebar-bottom-padding, 20px) var(--solum-sidebar-edge-padding, 13px) !important;
    box-sizing: border-box !important;
}

/* Base commune obligatoire pour tous les boutons d'action de la sidebar */
.btn-action,
.btn_action,
.btn_master,
.btn_contexte,
.btn_suppr,
.btn-action-primary,
.btn-action-secondary,
.btn-action-context,
.btn-action-danger,
.btn-action-save {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    min-height: 38px !important;
    width: 100% !important;
    padding: 8px 12px !important;
    border: none !important;
    color: #ffffff !important;
    font-weight: normal !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
    text-decoration: none !important;
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25) !important;
    margin-top: 0 !important;
    margin-bottom: var(--solum-sidebar-btn-gap, 3px) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transition: background-color 0.2s ease, filter 0.2s ease !important;
}

/* 1. Bouton Principal / Primary (Orange #CC9966, survol #D4791E, liseré droit #BF6E1B) */
.btn-action.btn-action-primary,
.btn-action.btn_master,
.btn-action-primary,
.btn_master {
    --action-color: #D4791E;
    --action-border: #BF6E1B;
    background-color: #CC9966 !important;
    box-shadow: inset -4px 0 0 #BF6E1B !important;
}

.btn-action.btn-action-primary:hover,
.btn-action.btn_master:hover,
.btn-action-primary:hover,
.btn_master:hover {
    background-color: #D4791E !important;
    box-shadow: inset -4px 0 0 #BF6E1B !important;
    filter: none !important;
}

/* Priorite absolue du bouton primary de la modale sur les boutons de la page */
body.solum-modal-open .sidebar-actions .btn-action-primary,
body.solum-modal-open .sidebar-actions .btn_master,
body.solum-modal-open .btn-action-primary:not(.solum-modal-btn),
body.solum-modal-open .btn_master:not(.solum-modal-btn) {
    background-color: #ACABA7 !important;
    box-shadow: inset -4px 0 0 #787774 !important;
    pointer-events: none !important;
    cursor: default !important;
}

/* 2. Bouton Secondaire / Action standard (Gris #ACABA7, survol #8B8B88, liseré droit #787774) */
.btn-action.btn-action-secondary,
.btn-action.btn_action,
.btn-action-secondary,
.btn_action {
    --action-color: #8B8B88;
    --action-border: #787774;
    background-color: #ACABA7 !important;
    box-shadow: inset -4px 0 0 #787774 !important;
}

.btn-action.btn-action-secondary:hover,
.btn-action.btn_action:hover,
.btn-action-secondary:hover,
.btn_action:hover {
    background-color: #8B8B88 !important;
    box-shadow: inset -4px 0 0 #787774 !important;
    filter: none !important;
}

/* Fallback par défaut si .btn-action est utilisé seul (aligné sur Secondaire) */
.btn-action:not([class*="btn-action-"]):not([class*="btn_"]) {
    --action-color: #8B8B88;
    --action-border: #787774;
    background-color: #ACABA7 !important;
    box-shadow: inset -4px 0 0 #787774 !important;
}

.btn-action:not([class*="btn-action-"]):not([class*="btn_"]):hover {
    background-color: #8B8B88 !important;
    box-shadow: inset -4px 0 0 #787774 !important;
    filter: none !important;
}

/* 3. Bouton Spécial / Contextuel (Gris bleuté #979FA7, survol #6C757D, liseré droit #515860) */
.btn-action.btn-action-context,
.btn-action.btn_contexte,
.btn-action-context,
.btn_contexte {
    --action-color: #6C757D;
    --action-border: #515860;
    background-color: #979FA7 !important;
    box-shadow: inset -4px 0 0 #515860 !important;
}

.btn-action.btn-action-context:hover,
.btn-action.btn_contexte:hover,
.btn-action-context:hover,
.btn_contexte:hover {
    background-color: #6C757D !important;
    box-shadow: inset -4px 0 0 #515860 !important;
    filter: none !important;
}

/* 4. Bouton Suppression / Danger (Gris #ACABA7, survol #F05656, liseré droit #CC3333) */
.btn-action.btn-action-danger,
.btn-action.btn_suppr,
.btn-action-danger,
.btn_suppr {
    --action-color: #F05656;
    --action-border: #CC3333;
    background-color: #ACABA7 !important;
    box-shadow: inset -4px 0 0 #CC3333 !important;
}

.btn-action.btn-action-danger:hover,
.btn-action.btn_suppr:hover,
.btn-action-danger:hover,
.btn_suppr:hover {
    background-color: #F05656 !important;
    box-shadow: inset -4px 0 0 #CC3333 !important;
    filter: none !important;
}

/* 5. Bouton d'enregistrement dynamique (.btn-action-save) */
.btn-action.btn-action-save,
.btn-action-save {
    --action-color: #8B8B88;
    --action-border: #787774;
    background-color: #ACABA7 !important;
    box-shadow: inset -4px 0 0 #787774 !important;
}

.btn-action.btn-action-save:hover,
.btn-action-save:hover {
    background-color: #8B8B88 !important;
    box-shadow: inset -4px 0 0 #787774 !important;
    filter: none !important;
}

.btn-action.btn-action-save.btn-action-primary,
.btn-action.btn-action-save.is-dirty,
.btn-action-save.btn-action-primary,
.btn-action-save.is-dirty {
    --action-color: #D4791E;
    --action-border: #BF6E1B;
    background-color: #CC9966 !important;
    box-shadow: inset -4px 0 0 #BF6E1B !important;
}

.btn-action.btn-action-save.btn-action-primary:hover,
.btn-action.btn-action-save.is-dirty:hover,
.btn-action-save.btn-action-primary:hover,
.btn-action-save.is-dirty:hover {
    background-color: #D4791E !important;
    box-shadow: inset -4px 0 0 #BF6E1B !important;
    filter: none !important;
}

/* Séparateurs d'actions */
.action-separator,
.sidebar-divider {
    border: none !important;
    border-top: 1px solid #808080 !important;
    margin-top: 3px !important;
    margin-bottom: 6px !important;
    width: 100% !important;
    height: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Neutralisation de fermeture pour la sidebar actions */
.actions-buttons-container > :last-child,
.btn-action:last-child {
    margin-bottom: 0 !important;
}

/* Annuler la marge supérieure des boutons qui suivent immédiatement un séparateur pour respecter la règle descendante unilatérale */
.sidebar-divider + .btn-nav,
.sidebar-divider + .btn-action,
.sidebar-divider + .btn_action,
.sidebar-divider + .btn_master,
.sidebar-divider + .btn_contexte,
.sidebar-divider + .btn_suppr,
.sidebar-divider + .btn-action-primary,
.sidebar-divider + .btn-action-secondary,
.sidebar-divider + .btn-action-context,
.sidebar-divider + .btn-action-danger,
.action-separator + .btn-nav,
.action-separator + .btn-action,
.action-separator + .btn_action,
.action-separator + .btn_master,
.action-separator + .btn_contexte,
.action-separator + .btn_suppr,
.action-separator + .btn-action-primary,
.action-separator + .btn-action-secondary,
.action-separator + .btn-action-context,
.action-separator + .btn-action-danger,
.solum-separator + .btn-nav,
.solum-separator + .btn-action,
.solum-separator + .btn_action,
.solum-separator + .btn_master,
.solum-separator + .btn_contexte,
.solum-separator + .btn_suppr,
.solum-separator + .btn-action-primary,
.solum-separator + .btn-action-secondary,
.solum-separator + .btn-action-context,
.solum-separator + .btn-action-danger {
    margin-top: 0 !important;
}

/* Bouton d'action en ligne (dans un formulaire ou à côté d'un champ) */
.btn-action-inline {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    min-width: 120px;
    width: auto !important;
    display: inline-block !important;
}

/* Neutralisation radicale des liserés et forçage de l'alignement pour les boutons de la zone principale */
button.solum-table-action-btn,
.solum-table-action-btn,
button.solum-main-action-btn,
.btn-action.solum-main-action-btn,
.btn-action-secondary.solum-main-action-btn,
.btn-action-primary.solum-main-action-btn,
.solum-main-action-btn,
.btn_main,
button.btn_main,
.btn_main_h28 {
    box-shadow: none !important;
    border: none !important;
    border-left: none !important;
    border-right: none !important;
    outline: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    vertical-align: middle !important;
    line-height: 1 !important;
    cursor: pointer !important;
    user-select: none !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
}

button.solum-table-action-btn,
.solum-table-action-btn {
    width: 100% !important;
    display: flex !important;
    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;
    line-height: 28px !important;
    background-color: #ACABA7 !important;
    color: #ffffff !important;
}

button.solum-table-action-btn:hover,
button.solum-table-action-btn:focus,
button.solum-table-action-btn:active,
.solum-table-action-btn:hover,
.solum-table-action-btn:focus,
.solum-table-action-btn:active {
    background-color: #8B8B88 !important;
    color: #ffffff !important;
    box-shadow: none !important;
    border: none !important;
    border-left: none !important;
    border-right: none !important;
    outline: none !important;
}

button.solum-main-action-btn:hover,
button.solum-main-action-btn:focus,
button.solum-main-action-btn:active,
.btn-action.solum-main-action-btn:hover,
.btn-action.solum-main-action-btn:focus,
.btn-action.solum-main-action-btn:active,
.solum-main-action-btn:hover,
.solum-main-action-btn:focus,
.solum-main-action-btn:active {
    box-shadow: none !important;
    border: none !important;
    border-left: none !important;
    border-right: none !important;
    outline: none !important;
}
