/* --------------------------------------------------------------------------
                                  GENERAL
-------------------------------------------------------------------------- */
@import "../vendor/bootstrap-icons/font/bootstrap-icons.min-5BD67CJ.css";
@import "app/partials/_sidebar-YGD_hFV.css";
/* --------------------------------------------------------------------------
   FONTS
-------------------------------------------------------------------------- */

@font-face {
    font-family: 'Montserrat';
    src: url("../fonts/Montserrat-SemiBold-AxVoUwO.ttf") format('truetype');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url("../fonts/Montserrat-Bold-yjR62Kr.ttf") format('truetype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Open Sans';
    src: url("../fonts/OpenSans-Regular-TjkuN7J.ttf") format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Open Sans';
    src: url("../fonts/OpenSans-SemiBold-z66qVHD.ttf") format('truetype');
    font-weight: 600;
    font-style: normal;
}

/* --------------------------------------------------------------------------
   VARIABLES
-------------------------------------------------------------------------- */

:root {
    /* Fonts */
    --font-title: 'Montserrat', sans-serif;
    --font-text: 'Open Sans', sans-serif;

    /* Colors */
    --color-primary: #F39F23;
    /*
    --color-primary: #C44536;
    */
    --color-primary-hover: #CF871D;
    --color-gray-dark: #4A444F;
    --color-dark: #353435;

    --sidebar-width: 200px;
    --sidebar-width-collapsed: 55px;
    --navbar-height: 57px;
}

/* --------------------------------------------------------------------------
   GLOBAL
-------------------------------------------------------------------------- */

body {
    font-family: var(--font-text);
    color: var(--color-dark);
}

.flash-wrapper {
    position: fixed;
    top: calc(var(--navbar-height) + 8px);
    left: calc(var(--sidebar-width) + 12px);
    right: 12px;
    z-index: 1080;
    pointer-events: none;
    transition: left 0.3s ease;
}

.flash-wrapper .alert {
    pointer-events: auto;
}

#main-wrapper.sidebar-collapsed .flash-wrapper {
    left: calc(var(--sidebar-width-collapsed) + 12px);
}

@media (max-width: 991.98px) {
    .flash-wrapper {
        left: 12px;
    }
}

#main-wrapper.has-sidebar {
    margin-left: var(--sidebar-width);
    transition: margin-left 0.3s ease;
}

#main-wrapper.has-sidebar.sidebar-collapsed {
    margin-left: var(--sidebar-width-collapsed);
}

@media (max-width: 991.98px) {
    #main-wrapper.has-sidebar {
        margin-left: 0 !important;
    }
}

/* Titres */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-title);
}

/* Éléments texte */
p,
span,
a,
button,
input,
textarea,
label {
    font-family: var(--font-text);
}

/* Boutons */
.btn {
    font-size: 0.875rem;
}

.btn i {
    font-size: 1rem;
}

.btn-primary {
    background-color: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
}

.btn-primary:hover {
    background-color: var(--color-primary-hover) !important;
    border-color: var(--color-primary-hover) !important;
}

.btn-dark {
    background-color: var(--color-gray-dark) !important;
    border-color: var(--color-gray-dark) !important;
    color: white !important;
}

.btn-dark:hover {
    background-color: var(--color-dark) !important;
}

.btn-outline-dark {
    border-color: var(--color-gray-dark) !important;
    color: var(--color-gray-dark) !important;
}

.btn-outline-dark:hover {
    background-color: var(--color-gray-dark) !important;
    color: white !important;
}

.text-primary {
    color: var(--color-primary) !important;
}

.bg-gray-dark {
    background-color: var(--color-gray-dark) !important;
}

/* Tableaux */
table,
.table {
    font-size: 0.875rem;
}

/* Datatable — header rouge */
.table-header-danger {
    --bs-table-bg: #dc3545;
    --bs-table-color: #fff;
}

/* Confirmation — icône succès */
.confirmation-icon {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background-color: #198754;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
}
