/**
 * @copyright Link to Business
 * author : Franck Grimonpont
  * /__theme/common/global.css
 */

/* 1. Variables CSS (toujours en premier) */
@import 'modules/xo-variables.css';

/* 2. Base et reset */
@import 'modules/xo-base.css';
@import 'modules/xo-glyphicons.css';
@import 'modules/xo-fontawesome-icons.css';

/* 3. Composants par ordre d'importance */
@import 'modules/xo-buttons.css';
@import 'modules/xo-forms.css';
@import 'modules/xo-alerts.css';
@import 'modules/xo-badges.css';
@import 'modules/xo-modals.css';

/* 4. Utilitaires et helpers */
@import 'modules/xo-utilities.css';
@import 'modules/xo-typography.css';

/* 5. Composants spécifiques (optionnels) */
@import 'modules/xo-navigation.css';
@import 'modules/xo-cards.css';
@import 'modules/xo-tables.css';
@import 'modules/xo-selects.css';

/* 6. Responsive et print (en dernier) */
/*@import 'modules/xo-responsive.css';
@import 'modules/xo-print.css';  */




/* ======================= CONTENUS TEMPORAIRES =============================== */
/* Les sections ci-dessous seront progressivement extraites vers des modules */


/*

.xo-card {
    border-radius: 0.75rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.xo-card-header {
    padding: 1.5rem;
    border-bottom: 1px solid #eee;
}

.xo-card-tilte {

}

.xo-card-content, xo-card-body {
    padding: 1.5rem;
}*/


/* Espacement général pour tous les éléments dans les boutons */
.xo-btn > *:not(:last-child):not(:only-child) {
    margin-right: 0.5rem !important;
}

/* Spinners et éléments de loading */
.xo-btn .spinner,
.xo-btn .loading,
.xo-btn i.loading-button,
.xo-btn::before {
    margin-right: 0.5rem !important;
}

/* Fix pour les boutons avec texte ET icône */
.xo-btn:has(i) {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
}

/* Alternative pour navigateurs sans support :has() */
.xo-btn i + *,
.xo-btn * + i {
    margin-left: 0.5rem !important;
}

/* Réinitialiser les marges par défaut des icônes */
.xo-btn i {
    margin: 0 !important;
}

.xo-btn i:not(:only-child):not(:last-child) {
    margin-right: 0.5rem !important;
}

.xo-btn i:not(:only-child):not(:first-child) {
    margin-left: 0.5rem !important;
}








/* ============== ONGLETS ====================*/


/* === STYLE MARQUÉ (comme image 1) === */


/* === COULEURS CONTEXTUELLES POUR ONGLETS MARQUÉS === */



/* === TAILLES === */


/* === ONGLETS VERTICAUX === */

/* === INTÉGRATION AVEC LES COMPTEURS === */

/* === RESPONSIVE === */

/* === ONGLETS AVEC ICÔNES === */

/* === ONGLETS AVEC BADGE DE NOTIFICATION === */

/* === ANIMATIONS === */

/* === ÉTATS DÉSACTIVÉS === */

/* === ACCESSIBILITÉ === */

/* === SCROLLING HORIZONTAL (pour beaucoup d'onglets) === */

/* === GROUPE DE BOUTONS AVEC ESPACEMENTS === */


/* === RESPONSIVE UTILITIES === */

/* Small screens (≥640px) */
@media (min-width: 640px) {
    .xo-sm-text-left { text-align: left !important; }
    .xo-sm-text-center { text-align: center !important; }
    .xo-sm-text-right { text-align: right !important; }

    .xo-sm-flex { display: flex !important; }
    .xo-sm-justify-start { justify-content: flex-start !important; }
    .xo-sm-justify-center { justify-content: center !important; }
    .xo-sm-justify-end { justify-content: flex-end !important; }

    .xo-sm-items-start { align-items: flex-start !important; }
    .xo-sm-items-center { align-items: center !important; }
    .xo-sm-items-end { align-items: flex-end !important; }

    .xo-sm-mx-auto { margin-left: auto !important; margin-right: auto !important; }
}


/* === CONTENEUR DROPDOWN === */
.xo-dropdown {
    position: relative;
    display: inline-block;
}

/* === BOUTON DROPDOWN === */
.xo-dropdown-toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

/* Icône caret dans le bouton */
.xo-dropdown-caret {
    margin-left: 0.25rem;
    font-size: 0.75rem;
    transition: var(--xo-dropdown-transition);
}

/* Rotation du caret quand le dropdown est ouvert */
.xo-dropdown.open .xo-dropdown-caret,
.xo-dropdown-toggle[aria-expanded="true"] .xo-dropdown-caret {
    transform: rotate(180deg);
}

.xo-dropdown.open .xo-dropdown-caret,
.xo-dropdown-toggle[aria-expanded="true"] .xo-dropdown-caret {
    transform: rotate(0deg);
}

/* === MENU DROPDOWN === */
.xo-dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: var(--xo-dropdown-z-index);
    display: none;
    min-width: var(--xo-dropdown-min-width);
    max-width: var(--xo-dropdown-max-width);
    padding: var(--xo-dropdown-padding);
    margin: 0.125rem 0 0;
    list-style: none;
    background-color: var(--xo-dropdown-bg);
    border: 1px solid var(--xo-dropdown-border);
    border-radius: var(--xo-dropdown-border-radius);
    box-shadow: var(--xo-dropdown-shadow);
    background-clip: padding-box;

    /* Animation d'apparition */
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity var(--xo-dropdown-animation-duration) ease,
    transform var(--xo-dropdown-animation-duration) ease;
}

/* Dropdown ouvert */
.xo-dropdown.open .xo-dropdown-menu,
.xo-dropdown-menu.show {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

/* Positionnement à droite */
.xo-dropdown-menu.pull-right,
.xo-dropdown-menu.dropdown-menu-right {
    left: auto;
    right: 0;
}

/* === ITEMS DU DROPDOWN === */
.xo-dropdown-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    padding: var(--xo-dropdown-item-padding);
    font-size: var(--xo-dropdown-item-font-size);
    line-height: var(--xo-dropdown-item-line-height);
    color: var(--xo-dropdown-item-color);
    text-decoration: none;
    white-space: nowrap;
    background-color: transparent;
    border: none;
    cursor: pointer;
    transition: var(--xo-dropdown-transition);
}

.xo-dropdown-item:hover,
.xo-dropdown-item:focus {
    color: var(--xo-dropdown-item-hover-color);
    background-color: var(--xo-dropdown-item-hover-bg);
    text-decoration: none;
}

.xo-dropdown-item:active,
.xo-dropdown-item.active {
    color: var(--xo-dropdown-item-active-color);
    background-color: var(--xo-dropdown-item-active-bg);
}

/* Items dans les LI (compatibilité Bootstrap) */
.xo-dropdown-menu > li > a {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    padding: var(--xo-dropdown-item-padding);
    font-size: var(--xo-dropdown-item-font-size);
    line-height: var(--xo-dropdown-item-line-height);
    color: var(--xo-dropdown-item-color);
    text-decoration: none;
    white-space: nowrap;
    transition: var(--xo-dropdown-transition);
}

.xo-dropdown-menu > li > a:hover,
.xo-dropdown-menu > li > a:focus {
    color: var(--xo-dropdown-item-hover-color);
    background-color: var(--xo-dropdown-item-hover-bg);
    text-decoration: none;
}

.xo-dropdown-menu > li.active > a,
.xo-dropdown-menu > li > a:active {
    color: var(--xo-dropdown-item-active-color);
    background-color: var(--xo-dropdown-item-active-bg);
}

/* === SÉPARATEURS === */
.xo-dropdown-divider {
    height: 1px;
    margin: 0.5rem 0;
    background-color: var(--color-border);
    border: 0;
}

/* Compatibilité Bootstrap */
.xo-dropdown-menu .divider {
    height: 1px;
    margin: 0.5rem 0;
    background-color: var(--color-border);
    border: 0;
}

/* === HEADERS === */
.xo-dropdown-header {
    display: block;
    padding: 0.25rem 1rem;
    margin-bottom: 0;
    font-size: 0.75rem;
    color: var(--color-text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 600;
}

/* === ITEMS DÉSACTIVÉS === */
.xo-dropdown-item.disabled,
.xo-dropdown-item:disabled,
.xo-dropdown-menu > li.disabled > a {
    color: var(--gray-400);
    pointer-events: none;
    background-color: transparent;
    cursor: not-allowed;
}

/* === ITEMS AVEC ICÔNES === */
.xo-dropdown-item i,
.xo-dropdown-menu > li > a i {
    width: 1rem;
    text-align: center;
    flex-shrink: 0;
}

/* === ITEMS AVEC LABELS/BADGES === */
.xo-dropdown-item .xo-label,
.xo-dropdown-item .xo-counter {
    margin-left: auto;
}

/* === VARIANTES COLORÉES === */
.xo-dropdown-item-danger {
    color: var(--system-danger);
}

.xo-dropdown-item-danger:hover {
    color: var(--white);
    background-color: var(--system-danger);
}

.xo-dropdown-item-success {
    color: var(--system-success);
}

.xo-dropdown-item-success:hover {
    color: var(--white);
    background-color: var(--system-success);
}

.xo-dropdown-item-warning {
    color: var(--system-warning);
}

.xo-dropdown-item-warning:hover {
    color: var(--gray-900);
    background-color: var(--system-warning);
}

/* === TAILLES === */
.xo-dropdown-sm .xo-dropdown-menu {
    min-width: 8rem;
    font-size: 0.75rem;
}

.xo-dropdown-sm .xo-dropdown-item,
.xo-dropdown-sm .xo-dropdown-menu > li > a {
    padding: 0.25rem 0.75rem;
    font-size: 0.75rem;
}

.xo-dropdown-lg .xo-dropdown-menu {
    min-width: 16rem;
    font-size: 1rem;
}

.xo-dropdown-lg .xo-dropdown-item,
.xo-dropdown-lg .xo-dropdown-menu > li > a {
    padding: 0.75rem 1.25rem;
    font-size: 1rem;
}

/* === DROPDOWN AVEC SCROLL === */
.xo-dropdown-menu-scrollable {
    max-height: 20rem;
    overflow-y: auto;
}

/* === ANIMATIONS AVANCÉES === */
@keyframes xo-dropdown-slide-down {
    from {
        opacity: 0;
        transform: translateY(-10px) scale(0.95);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.xo-dropdown-animated .xo-dropdown-menu {
    animation: xo-dropdown-slide-down var(--xo-dropdown-animation-duration) ease;
}

/* === RESPONSIVE === */
@media (max-width: 768px) {
    .xo-dropdown-menu {
        position: fixed;
        top: auto !important;
        left: 1rem !important;
        right: 1rem !important;
        bottom: 1rem;
        width: auto;
        max-width: none;
        transform: translateY(100%);
        border-radius: 0.75rem 0.75rem 0 0;
    }

    .xo-dropdown.open .xo-dropdown-menu,
    .xo-dropdown-menu.show {
        transform: translateY(0);
    }

    .xo-dropdown-item,
    .xo-dropdown-menu > li > a {
        padding: 0.75rem 1rem;
        font-size: 1rem;
    }
}

/* === INTÉGRATION AVEC LES BOUTONS XO === */
.xo-btn.xo-dropdown-toggle {
    position: relative;
}

/* Pas de border-radius en bas si le dropdown est ouvert */
.xo-dropdown.open .xo-dropdown-toggle {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

/* === BACKDROP MOBILE === */
@media (max-width: 768px) {
    .xo-dropdown-backdrop {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.5);
        z-index: var(--xo-dropdown-z-index);
        display: none;
    }

    .xo-dropdown.open .xo-dropdown-backdrop {
        display: block;
    }
}

/* === ACCESSIBILITÉ === */
.xo-dropdown-toggle:focus-visible {
    outline: 2px solid var(--color-brand);
    outline-offset: 2px;
}

.xo-dropdown-item:focus-visible,
.xo-dropdown-menu > li > a:focus-visible {
    outline: 2px solid var(--color-brand);
    outline-offset: -2px;
}



/* ======================= TITRES (H1-H6) =============================== */

/* Classe de base pour tous les titres */
.xo-heading {
    font-family: var(--font-family-sans);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-tight);
    color: var(--color-text-primary);
    margin-top: 0;
    margin-bottom: var(--xo-text-margin-bottom);
    letter-spacing: -0.025em; /* Légèrement condensé comme Tailwind */
}




/* ======================= LISTES =============================== */

.xo-list {
    font-family: var(--font-family-sans);
    font-size: var(--font-size-base);
    line-height: var(--line-height-relaxed);
    color: var(--color-text-primary);
    margin-top: 0;
    margin-bottom: var(--xo-text-margin-bottom);
    padding-left: 1.5rem;
}

.xo-list li {
    margin-bottom: var(--spacing-sm);
}

.xo-list li:last-child {
    margin-bottom: 0;
}

/* Liste à puces */
.xo-list-disc {
    list-style-type: disc;
}

.xo-list-circle {
    list-style-type: circle;
}

.xo-list-square {
    list-style-type: square;
}

/* Liste numérotée */
.xo-list-decimal {
    list-style-type: decimal;
}

.xo-list-roman {
    list-style-type: lower-roman;
}

/* Liste sans puces */
.xo-list-none {
    list-style: none;
    padding-left: 0;
}

/* Liste avec espacement réduit */
.xo-list-tight li {
    margin-bottom: 0.25rem;
}

/* Liste avec icônes personnalisées */
.xo-list-check {
    list-style: none;
    padding-left: 0;
}

.xo-list-check li {
    position: relative;
    padding-left: 1.75rem;
}

.xo-list-check li::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: var(--system-success);
    font-weight: var(--font-weight-bold);
}

.xo-list-arrow li::before {
    content: "→";
    color: var(--color-brand);
}

.xo-list-dot li::before {
    content: "•";
    color: var(--color-brand);
    font-size: 1.2em;
}

/* ======================= CITATIONS =============================== */

.xo-blockquote {
    font-family: var(--font-family-sans);
    font-size: var(--font-size-lg);
    font-weight: var(--font-weight-normal);
    font-style: italic;
    line-height: var(--line-height-relaxed);
    color: var(--color-text-secondary);
    margin: var(--xo-text-margin-bottom-lg) 0;
    padding: var(--spacing-lg) var(--spacing-xl);
    border-left: 4px solid var(--xo-text-quote-border);
    background-color: var(--color-background-alt);
    border-radius: 0 var(--radius-md) var(--radius-md) 0;
}

.xo-blockquote p {
    margin: 0;
}

.xo-blockquote p:not(:last-child) {
    margin-bottom: var(--spacing-md);
}

/* Citation avec footer */
.xo-blockquote-footer {
    font-style: normal;
    font-size: var(--font-size-sm);
    color: var(--color-text-muted);
    margin-top: var(--spacing-md);
}

.xo-blockquote-footer::before {
    content: "— ";
}

/* Variantes de citations */
.xo-blockquote-primary {
    border-left-color: var(--color-brand);
    background-color: hsla(var(--corporate-primary-h), var(--corporate-primary-s), var(--corporate-primary-l), 0.05);
}

.xo-blockquote-success {
    border-left-color: var(--system-success);
    background-color: var(--green-50);
}

.xo-blockquote-warning {
    border-left-color: var(--system-warning);
    background-color: var(--amber-50);
}

.xo-blockquote-info {
    border-left-color: var(--system-info);
    background-color: var(--blue-50);
}

/* Citation simple (sans background) */
.xo-blockquote-simple {
    background: none;
    padding-left: var(--spacing-lg);
    font-size: var(--font-size-xl);
}


/* ======================= LIENS =============================== */







/* ======================= CONTENEUR TYPOGRAPHIQUE =============================== */



/* ======================= RESPONSIVE =============================== */

/* Adaptation mobile */
@media (max-width: 640px) {
    .xo-h1, .xo-heading-1 {
        font-size: var(--font-size-3xl);
    }

    .xo-h2, .xo-heading-2 {
        font-size: var(--font-size-2xl);
    }

    .xo-text-lead {
        font-size: var(--font-size-lg);
    }

    .xo-blockquote {
        margin-left: calc(-1 * var(--spacing-md));
        margin-right: calc(-1 * var(--spacing-md));
        padding-left: var(--spacing-md);
        padding-right: var(--spacing-md);
    }

    .xo-prose {
        max-width: 100%;
    }
}

/* Adaptation tablette */
@media (min-width: 768px) {
    .xo-text-responsive-lg {
        font-size: var(--font-size-lg);
    }

    .xo-heading-responsive-xl {
        font-size: var(--font-size-4xl);
    }
}

/* ======================= FORMULAIRES=============================== */





/* ======================= UTILITAIRES DARK MODE (préparation) =============================== */

@media (prefers-color-scheme: dark) {
    .xo-text-auto {
        color: var(--color-text-white);
    }

    .xo-code {
        background-color: var(--gray-800);
        color: var(--gray-100);
        border-color: var(--gray-700);
    }

    .xo-code-block {
        background-color: var(--gray-800);
        color: var(--gray-100);
        border-color: var(--gray-700);
    }

    .xo-mark {
        background-color: var(--amber-800);
        color: var(--amber-100);
    }
}


/* =============================================
   XO FORMULAIRES HORIZONTAUX
   Classes pour aligner labels et champs côte à côte
   ============================================= */

/* === GROUPE HORIZONTAL DE BASE === */


/* === COMPOSANT XO-INFO-BLOCK ===
   Pattern: Icône + Contenu + Action optionnelle
   Usage: Affichage d'informations structurées avec actions
*/

.xo-info-grid {
    display: grid;
    /*grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));*/
    grid-template-columns: repeat(2, 1fr);
    gap: var(--spacing-lg);
    margin-bottom:  1.5rem ;
}

.xo-info-full-width {
    /*background: var(--gray-50);
    padding: 1rem;
    border-radius: 0.5rem;
    margin-bottom: 1.5rem;
    display: flex;
    align-items: flex-start;*/
    margin-top:  1.5rem ;
    margin-bottom:  1.5rem ;
}

.xo-info-block {
    display: flex;
    align-items: flex-start;
    padding: var(--spacing-lg);
    background: var(--gray-50);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    position: relative;
    transition: all 0.2s ease;
    min-height: 100px;
}

.xo-info-block:hover {
    box-shadow: var(--shadow-sm);
    border-color: var(--color-border-strong);
}

/* === ICÔNES CONTEXTUELLES === */
.xo-icon-container {
    width: 40px;
    height: 40px;
    border-radius: var(--radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: var(--spacing-md);
    flex-shrink: 0;
    font-size: 18px;
}

/* Variantes d'icônes utilisant les couleurs système */
/* === COULEURS SYSTÈME === */
.xo-icon-container-primary { background: var(--system-primary-color); }
.xo-icon-container-success { background: var(--system-success); }
.xo-icon-container-danger { background: var(--system-danger); }
.xo-icon-container-warning { background: var(--system-warning); }
.xo-icon-container-info { background: var(--system-info); }
/* === COULEURS CORPORATE === */
.xo-icon-container-corporate { background: var(--corporate-primary); }
.xo-icon-container-corporate-primary { background: var(--corporate-primary); }
.xo-icon-container-corporate-secondary { background: var(--corporate-secondary); }
.xo-icon-container-corporate-accent { background: var(--corporate-accent); }
/* === COULEURS NEUTRES === */
.xo-icon-container-white { background: var(--white); color: var(--gray-700); }
.xo-icon-container-black { background: var(--black); }
.xo-icon-container-gray { background: var(--gray-500); }
.xo-icon-container-light { background: var(--gray-100); color: var(--gray-700); }
.xo-icon-container-dark { background: var(--gray-800); }

/* === PALETTE COMPLÈTE === */




/* === UTILITAIRES POUR GÉNÉRATION AUTOMATIQUE === */

/* Classes de base pour réutilisation */
.xo-contrast-light { color: var(--gray-800); }
.xo-contrast-dark { color: var(--white); }
.xo-contrast-auto-50 { color: var(--gray-800); }
.xo-contrast-auto-100 { color: var(--gray-800); }
.xo-contrast-auto-200 { color: var(--gray-900); }
.xo-contrast-auto-300 { color: var(--gray-900); }
.xo-contrast-auto-400 { color: var(--white); }
.xo-contrast-auto-500 { color: var(--white); }
.xo-contrast-auto-600 { color: var(--white); }
.xo-contrast-auto-700 { color: var(--white); }
.xo-contrast-auto-800 { color: var(--white); }
.xo-contrast-auto-900 { color: var(--white); }

/* === CLASSES DE RACCOURCI POUR LES COULEURS PRINCIPALES === */

/* Maintient la compatibilité avec vos classes actuelles */
.xo-icon-container-primary { background: var(--system-primary-color); color: var(--white); }
.xo-icon-container-success { background: var(--system-success); color: var(--white); }
.xo-icon-container-danger { background: var(--system-danger); color: var(--white); }
.xo-icon-container-warning { background: var(--system-warning); color: var(--white); }
.xo-icon-container-info { background: var(--system-info); color: var(--white); }
.xo-icon-container-corporate { background: var(--corporate-primary); color: var(--white); }

/* Aliases pour les couleurs principales avec 500 par défaut */
.xo-icon-container-red { background: var(--red-500); color: var(--white); }
.xo-icon-container-orange { background: var(--orange-500); color: var(--white); }
.xo-icon-container-amber { background: var(--amber-500); color: var(--amber-900); }
.xo-icon-container-yellow { background: var(--yellow-500); color: var(--yellow-900); }
.xo-icon-container-lime { background: var(--lime-500); color: var(--lime-900); }
.xo-icon-container-green { background: var(--green-500); color: var(--white); }
.xo-icon-container-emerald { background: var(--emerald-500); color: var(--white); }
.xo-icon-container-teal { background: var(--teal-500); color: var(--white); }
.xo-icon-container-cyan { background: var(--cyan-500); color: var(--white); }
.xo-icon-container-sky { background: var(--sky-500); color: var(--white); }
.xo-icon-container-blue { background: var(--blue-500); color: var(--white); }
.xo-icon-container-indigo { background: var(--indigo-500); color: var(--white); }
.xo-icon-container-violet { background: var(--violet-500); color: var(--white); }
.xo-icon-container-purple { background: var(--purple-500); color: var(--white); }
.xo-icon-container-fuchsia { background: var(--fuchsia-500); color: var(--white); }
.xo-icon-container-pink { background: var(--pink-500); color: var(--white); }
.xo-icon-container-rose { background: var(--rose-500); color: var(--white); }

/* === CONTENU STRUCTURÉ === */
.xo-info-content {
    flex: 1;
    min-width: 0;
}

.xo-info-label {
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-medium);
    color: var(--color-text-secondary);
    margin: 0 0 var(--spacing-xs) 0;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    display: flex;
    align-items: center;
    gap: var(--spacing-sm);
}

.xo-info-title {
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-semibold);
    color: var(--color-text-primary);
    margin: 0 0 var(--spacing-xs) 0;
    line-height: 1.4;
}

.xo-info-subtitle {
    font-size: var(--font-size-sm);
    color: var(--color-text-secondary);
    margin: 0;
    line-height: 1.4;
}

.xo-info-description {
    font-size: var(--font-size-sm);
    color: var(--color-text-primary);
    margin: var(--spacing-sm) 0 0 0;
    line-height: 1.5;
    padding: var(--spacing-md);
    background: var(--gray-50);
    border-radius: var(--radius-sm);
    border-left: 3px solid var(--system-info);
}

/* Variantes de description */
.xo-info-description-danger {
    background: hsla(var(--system-danger-h), var(--system-danger-s), var(--system-danger-l), var(--xo-alert-bg-opacity));
    border-left-color: var(--system-danger);
}

.xo-info-description-success {
    background: hsla(var(--system-success-h), var(--system-success-s), var(--system-success-l), var(--xo-alert-bg-opacity));
    border-left-color: var(--system-success);
}

.xo-info-description-warning {
    background: hsla(var(--system-warning-h), var(--system-warning-s), var(--system-warning-l), var(--xo-alert-bg-opacity));
    border-left-color: var(--system-warning);
}

.xo-info-description-info {
    background: hsla(var(--system-info-h), var(--system-info-s), var(--system-info-l), var(--xo-alert-bg-opacity));
    border-left-color: var(--system-info)
}

/* === ACTIONS CONTEXTUELLES === */
.xo-action-button {
    position: absolute;
    top: var(--spacing-md);
    right: var(--spacing-md);
    width: 32px;
    height: 32px;
    border: none;
    background: var(--gray-100);
    border-radius: var(--radius-sm);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none;
    color: var(--color-text-secondary);
    opacity: 0.7;
}

.xo-action-button:hover {
    background: var(--gray-200);
    color: var(--color-text-primary);
    transform: scale(1.05);
    opacity: 1;
}

.xo-action-button i {
    font-size: 14px;
}

/* === COMPOSANT XO-SUMMARY-CARD ===
   Pattern: Card complète pour récapitulatifs
*/

.xo-summary-card {
    background: var(--color-background);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-md);
    border: 1px solid var(--color-border);
    overflow: hidden;
}

.xo-summary-header {
    padding: var(--spacing-xl) var(--spacing-xl) var(--spacing-lg);
    background: var(--color-background);
    border-bottom: 1px solid var(--color-border);
}

.xo-summary-title {
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-bold);
    color: var(--color-text-primary);
    margin: 0;
    line-height: 1.2;
}

.xo-summary-content {
    padding: var(--spacing-xl);
}

/* === COMPOSANT XO-TITLE-WITH-UNDERLINE ===
   Pattern: Titre avec ligne colorée
*/

.xo-title-section {
    margin-bottom: var(--spacing-2xl);
}

.xo-title-section h2,
.xo-title-section h3 {
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-semibold);
    color: var(--color-text-primary);
    margin: 0 0 var(--spacing-sm) 0;
    line-height: 1.3;
}

.xo-title-underline {
    height: 3px;
    width: 60px;
    background: var(--system-primary-color);
    border-radius: var(--radius-pill);
}

/* Variantes d'underline */
.xo-title-underline-success { background: var(--system-success); }
.xo-title-underline-danger { background: var(--system-danger); }
.xo-title-underline-warning { background: var(--amber-500); }
.xo-title-underline-info { background: var(--system-info); }

/* === RESPONSIVE === */
@media (max-width: 768px) {
    .xo-info-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-md);
    }

    .xo-info-block {
        flex-direction: column;
        text-align: center;
        padding: var(--spacing-md);
    }

    .xo-icon-container {
        margin-right: 0;
        margin-bottom: var(--spacing-sm);
    }

    .xo-action-button {
        position: static;
        margin-top: var(--spacing-md);
        align-self: center;
    }

    .xo-summary-content {
        padding: var(--spacing-lg);
    }

    .xo-summary-title {
        font-size: var(--font-size-xl);
    }
}

/* === VARIANTES SPÉCIALISÉES ===
   Pour cas d'usage spécifiques
*/

/* Info block compact */
.xo-info-block-compact {
    min-height: auto;
    padding: var(--spacing-md);
}

.xo-info-block-compact .xo-icon-container {
    width: 32px;
    height: 32px;
    font-size: 14px;
}

/* Info block avec focus état */
.xo-info-block-interactive:hover {
    cursor: pointer;
    transform: translateY(-2px);
    box-shadow: var(--shadow-lg);
}

/* Info block avec statut */
.xo-info-block-success {
    border-left: 4px solid var(--system-success);
}

.xo-info-block-danger {
    border-left: 4px solid var(--system-danger);
}

.xo-info-block-warning {
    border-left: 4px solid var(--system-warning);
}

.xo-info-block-info {
    border-left: 4px solid var(--system-info);
}



/*===== editeur in line des titres ======*/
/* Éléments éditables */
.xo-inline-editable {
    position: relative;
    display: inline-block;
    margin: 0;
    padding: 8px 35px 8px 12px;
    cursor: pointer;
    border: 1px solid transparent;
    border-radius: 6px;
    transition: all 0.2s ease;
    min-width: 200px;
    background: transparent;
}

/* Effet au survol - fond qui s'assombrit */
.xo-inline-editable:hover:not(.editing) {
    background-color: rgba(0, 0, 0, 0.05);
    border-color: rgba(0, 0, 0, 0.1);
}

/* Icône d'édition */
.xo-edit-icon {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0;
    transition: opacity 0.2s ease;
    color: #6c757d;
    font-size: 0.8em;
    pointer-events: none;
}

.xo-inline-editable:hover:not(.editing) .xo-edit-icon {
    opacity: 1;
}

/* Mode édition */
.xo-inline-editable.editing {
    background: transparent;
    border: none;
    padding: 0;
    cursor: default;
}

.xo-edit-container {
    display: none;
    align-items: center;
    gap: 8px;
    flex-wrap: nowrap;
}

.xo-edit-container.active {
    display: flex;
}

.xo-edit-input {
    flex: 1;
    padding: 8px 12px;
    border: 2px solid var(--system-primary-color);
    border-radius: 6px;
    font-size: inherit;
    font-weight: inherit;
    font-family: inherit;
    background: white;
    outline: none;
    box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.1);
    min-width: 200px;
}

.xo-edit-actions {
    display: flex;
    gap: 4px;
    flex-shrink: 0;
}

.xo-edit-btn {
    padding: 6px 10px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 12px;
    font-weight: 500;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}

.xo-btn-save {
    background: var(--system-success);
    color: white;
}

.xo-btn-save:hover:not(:disabled) {
    background: var(--system-success);
}

.xo-btn-cancel {
    background: #6c757d;
    color: white;
}

.xo-btn-cancel:hover:not(:disabled) {
    background: #545b62;
}

.xo-edit-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Animation de succès */
.success-flash {
    animation: successFlash 0.6s ease;
}

@keyframes successFlash {
    0% { background-color: transparent; }
    50% { background-color: rgba(40, 167, 69, 0.2); }
    100% { background-color: transparent; }
}

/* Responsive */
@media (max-width: 768px) {
    .xo-edit-container {
        flex-wrap: wrap;
    }

    .xo-edit-input {
        min-width: 100%;
        margin-bottom: 8px;
    }

    .xo-edit-actions {
        width: 100%;
        justify-content: flex-end;
    }
}

/* Style global _____________________________________________________________ */



html, body {
    /*padding: 0;*/
    /*margin: 0;*/
    width: 100%;
    /*overflow: hidden;*/
    height: 100%;
}

legend {
    /*font-weight: bold;*/
}

span {
    /*font-size: 90%;*/
}

img {
    /*border: 0*/
}

input, textarea {
    /*font-size: 100%;*/
    /*text-align: left;*/
    /*padding-left: 0.375em*/
}

.italic {
    font-style: italic;
}

.strong {
    font-weight: bold
}

li {
    /*list-style-type: none;*/
}

h5 {
    /*font-size: 16px;*/
}

input[type="checkbox"] {
    border: 0 !important; /* For IE */
}

caption, th, td {
    /*line-height: 26px;*/
    line-height: normal;
}

select {
    /*min-height: 22px;*/
}


i.loading-button {
    background-image: url('../image/loading.gif');
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%;
    position: relative;
    top: 2px;
    margin-right: 4px;
    width: 16px;
    height: 15px;
    display: inline-block;
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.modal {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.helpEdition > div {
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.icon-gif {
    display: inline-block;
    width: 23px;
    height: 13px;
    line-height: 23px;
    vertical-align: text-top;
    background-image: url("../image/icon-gif.png");
    background-position: center;
    background-repeat: no-repeat;
}

.icon-png {
    display: inline-block;
    width: 23px;
    height: 13px;
    line-height: 23px;
    vertical-align: text-top;
    background-image: url("../image/icon-png.png");
    background-position: center;
    background-repeat: no-repeat;
}

.icon-pdf {
    display: inline-block;
    width: 23px;
    height: 13px;
    line-height: 23px;
    vertical-align: text-top;
    background-image: url("../image/icon-pdf.png");
    background-position: center;
    background-repeat: no-repeat;
}

.icon-jpg {
    display: inline-block;
    width: 23px;
    height: 13px;
    line-height: 23px;
    vertical-align: text-top;
    background-image: url("../image/icon-jpg.png");
    background-position: center;
    background-repeat: no-repeat;
}

.modal {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    border-radius: var(--xo-modal-border-radius);
}

.modal-header {
    padding: var(--xo-modal-padding);
    border-bottom: 1px solid var(--color-border) !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;
    flex-direction: row-reverse;
}

.modal-footer {
    padding: var(--xo-modal-padding);
    border-top: 1px solid var(--color-border);
    display: flex;
    gap: var(--xo-modal-gap);
    justify-content: flex-end;
    flex-shrink: 0;
    flex-wrap: wrap;
    background-color: var(--gray-100);
    border-radius: 0 0 var(--xo-modal-border-radius) var(--xo-modal-border-radius);
}

.modal-backdrop, .modal-backdrop.fade.in {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: var(--xo-modal-backdrop-bg);
    backdrop-filter: var(--xo-modal-backdrop-blur);
    z-index: 1040;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    overflow-y: auto;
    /*opacity: 0;
    visibility: hidden;
    transition: opacity var(--xo-modal-duration) var(--xo-modal-easing), visibility var(--xo-modal-duration) var(--xo-modal-easing);*/
}



.modal.hide.fade .xo-modal-body {
    max-height: calc(90vh - 200px); /* Réserver de l'espace pour header/footer */
    overflow-y: auto;
}

#scroll-to-top {
    position: fixed;
    bottom: 50px;
    right: 50px;
    display: block;
    width: 48px;
    height: 48px;
    border-radius: 4px;
    cursor: pointer;
}

#visible {
    float: left;
    margin-top: -30px;
}

#connect-as-customer {
    float: left;
    height: 14px;
    line-height: 14px;
    width: 100%;
    margin-bottom: 0;
    padding: 21px 1% 35px;
    z-index: 20;
}

#connect-as-customer > span {
    position: relative;
    margin-left: 10px;
    /*top: -10px;*/
}

#connect-as-customer div.btn-group {
    margin-top: 3px;
}

#connect-as-customer a {
    /*position: relative;*/
    /*top: -14px;*/
    /*padding: 4px 6px;*/
    /*filter: opacity(0.85);*/
    /*-webkit-filter: opacity(0.85);*/
}

#connect-as-customer .dropdown-menu > li > a:hover {
    /*background-color: var(--xo-connect-as-customer-bkg-color);
    background-image: none;*/
}

#connect-as-customer button {
    margin-top: -8px;
}

#connect-as-customer .customer-perso {
    margin-right: 10px;
}

div.left-menu {
    height: 100%;
    background-color: transparent;
}

.left-menu ul {
    height: 100%;
    /*max-width: 250px;*/
    padding: 57px 15px 0 15px;
    text-align: right;
    margin: 0;
    position: fixed;
    background-color: var(--xo-leftmenu-bkg-color);
    z-index: 2000;
    color:var(--white)
}

.left-menu.reduced {
    min-width: 44px;
    -webkit-transition-duration: .25s;
}

.left-menu ul li.disabled {
    opacity: .5;
}

.left-menu li a[data-original-title] {
    color:var(--brand-left-menu-item-icone)!important;
    text-shadow: 0 1px 0 var(--brand-left-menu-item-icone-shadow);
}

.nav-list > .active > a,
.nav-list > .active > a:hover,
.nav-list > .active > a:focus {
    color: var(--white);
    background-color: var(--brand-left-menu-item-active-bkg);
}

.nav > li > a:hover,
.nav > li > a:focus {
    text-decoration: none;
    background-color: var(--brand-left-menu-item-bkg);
}


#loading {
    z-index: 20;
    position: absolute;
    top: 50%;
    left: 50%;
    display: none;
    width: 32px;
    height: 32px;
}

.blocLoading {
    width: 100px;
    left: 50%;
    position: relative;
    margin-left: -50px;
}

.head,
.footer {
    position: relative;
    float: left;
    width: 100%;
}

.footer {
    position: fixed;
    bottom: 0;
    left: 0;
    height: 47px;
    width: 100%;
    background-color: var(--xo-leftmenu-bkg-color);
    z-index: 1999;
    display: flex;
    justify-content: center;
    align-items: center;
}

.footer-content {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 16px;
}

.powered-by {
    color: var(--gray-50); // #FFFFFFB2
    font-size: 0.6rem;
    font-weight: 400;
    line-height: 1;
}

.footer-logo {
    height: 16px; /* Ajusté pour mieux correspondre à la taille du texte */
    width: auto;
}

.footer .well {
    padding: 5px;
    margin: 0;
    opacity: .75;
}

.footer p.muted {
    margin-bottom: 0;
}

.head {
    width: 100%;
    max-height: 84px;
    height: 80px;
    /*margin-top: -57px;*/
    border-bottom: 1px solid #d0d0d0;
}

.headShifted {
    margin-top: 0;
}

.app_title {
    float: left;
    width: 51%;
    height: 100%;
}

.head .login-menu {
    width: 40%;
    height: 100%;
}

.head .login-menu .disconnect-user {
    width: 42px;
    margin: 20px 20px;
    cursor: pointer;
    height: 42px;
}

.head .login-menu .disconnect-user img {
    width: 28px;
    height: 28px;
    margin: 6px;
    cursor: pointer;
}

.head .login-menu .identity {
    margin-top: 24px;
    cursor: default;
}

.head .login-menu .identity span.username {
    line-height: 36px;
}

.head .login-menu .my-avatar {
    display: block;
    width: 42px;
    height: 42px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    background-color: transparent;
    border: 1px solid #C0C0C0;
    margin: -4px 8px 0px 0px;
    border-radius: 50%;
    cursor: pointer;
}

.head .login-menu a {
    color: var(--black) !important;
}

#headerMessageInformation {
    padding: 16px 20px 20px 20px;
    line-height: 20px;
    background-color: rgba(252, 195, 0, 0.3);
}

/*.head .login-menu .my-avatar img {*/
/*display: none;*/
/*}*/

/*.head .login-menu .my-avatar > div {*/
/*width: 100%;*/
/*height: 100%;*/
/*}*/

div.row-fluid div.span12.main_wrapper {
    margin: 0px;
    padding-left: 48px;
    margin-bottom: 40px !important;
}

.content h2 {
    margin: 10px 0 20px;
}

#content {
    float: left;
    margin: 0;
    overflow: hidden;
}

#content_title {
    float: left;
    padding: 0 0 0 2%;
    /*margin-bottom: 1%;*/
}

#content_title h3 {
    float: left;
}

#content_full {
    float: left;
    margin: 0;
padding: var(--spacing-md)
}

#content_left.normal {
    float: left;
    /*margin: 0;*/
}

#content_right.span1 {
    width: 36px;
}

#content_right.normal {
    padding-left: 1%;
    margin: 0;
}

#content_left.div {
    padding: 10px;
}

#content_left.normal {
    /*margin: 0;*/
    -webkit-transition: 350ms ease-out;
    -moz-transition: 350ms ease-out;
    -ms-transition: 350ms ease-out;
    -o-transition: 350ms ease-out;
    transition: 350ms ease-out;
}

#content_left.enlarge {
    /*width: 94.6%;*/
    -webkit-transition: 350ms ease-out;
    -moz-transition: 350ms ease-out;
    -ms-transition: 350ms ease-out;
    -o-transition: 350ms ease-out;
    transition: 350ms ease-out;
}

#content_right.normal {
    /*width: 24.9%;*/
    -webkit-transition: 350ms ease-out;
    -moz-transition: 350ms ease-out;
    -ms-transition: 350ms ease-out;
    -o-transition: 350ms ease-out;
    transition: 350ms ease-out;
}

#content_right.reduce {
    /*width: 0%;*/
    -webkit-transition: 350ms ease-out;
    -moz-transition: 350ms ease-out;
    -ms-transition: 350ms ease-out;
    -o-transition: 350ms ease-out;
    transition: 350ms ease-out;
}

#content_right.reduce .content {
    display: none;
}

/*#content_right:before {*/
/*content: '';*/
/*}*/

#content_right .hook {
    position: relative;
    float: left;
    top: 16px;
    left: -15px;
    width: 36px;
    height: 28px;
    background-color: #797979;
    cursor: pointer;
}

#content_right .hook i {
    margin-top: 5px;
    margin-left: 10px;
}

#content_right .hook-inverse {
    -webkit-transform: scaleX(-1);
    -moz-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    -o-transform: scaleX(-1);
    transform: scaleX(-1);
    /*left: -45%;*/
}

#dynamic_content {
    position: relative;
    float: left;
    width: 100%;
}

#first-login-message {
    display: none;
    width: 630px;
}

#first-login-message input {
    width: 260px
}

#password-form.form-horizontal .control-label {
    float: left;
    width: 210px;
    padding-top: 5px;
    text-align: right;
    margin-right: 10px;
}

#password-form span.text-error {
    margin-left: 10px;
}

.no-close .ui-dialog-titlebar-close {
    display: none;
}

#dropzone form {
    margin: 0;
}

#error404,
#error403 {
    width: 60%;
    margin: 0 auto;
    padding: 20px;
}

#error404 p,
#error403 p {
    text-align: left;
    line-height: 200%;
    font-size: 150%;
}

#error {
    display: none;
    padding: 10px;
    font-weight: bold;
}

.fade {
    opacity: 0.35;
}


.ok, .erreur,
.search {
    display: none;
    float: left;
    width: 20px;
    height: 24px;
    margin: 0;
}

span .ok,
span .erreur,
span .search {
    width: 20px;
}



/* Style des menus __________________________________________________________ */

#menu_top_right {
    /*float: right;*/
    position: absolute;
    width: 50%;
    top: 0;
    right: 0;
}

#menu_top_right button {
    margin-top: 5px;
}

#menu_top_right ul {
    margin: 10px 10px 0 0;
}

#menu_top_right ul li {
    float: right;
    display: block;
}

#menu_top_right ul li a,
#menu_top_right ul li p {
    display: inline-block;
    margin-left: 6px;
    margin-top: 10px;
    margin-right: 4px;
    text-shadow: none;
}

#menu_top_right .popover-content {
    max-height: 400px;
    overflow-y: auto;
}

#menu_top_right .popover-content strong {
    font-weight: normal;
}

#menu_top_right .popover-content ul {
    margin: 0;
}

#menu_top_right .popover-content hr {
    margin: 6px 0
}

#menu_top_right .logout {
    position: relative;
    top: 8px;
    margin-right: -6px
}

/* Fin du style _____________________________________________________________ */
/* Style de la Help bar _____________________________________________________ */

#helpBar {
    position: fixed;
    z-index: 999999;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 0;
    margin-top: 0;
    /*-moz-box-shadow: 0 0 15px 5px rgba(0, 0, 0, .25);*/
    /*-webkit-box-shadow: 0 0 15px 5px rgba(0, 0, 0, .25);*/
    /*box-shadow: 0 0 15px 5px rgba(0, 0, 0, .25)*/
}

#helpBar .displayText {
    width: 100%;
    height: 28px;
    color: #818285;
    background-color: #ffffffFFF;
    border-top: 1px solid #eee;
    padding: 8px 0 0 20px
}

#helpBar .displayText span {
    display: inline
}

#helpBar .displayText span label {
    font-weight: bold
}

/* Style de la bibliothèque __________________________________________________*/

#bibliotheque #item_list {
    float: left;
    width: 102%;
    /*border-bottom: #b2b3b6 solid 1px;*/
    /*padding-bottom: 20px;*/
    max-height: 430px;
    overflow-y: auto;
}

#bibliotheque .element {
    display: block;
    float: left;
    width: 145px;
    /*height: 202px;*/
    margin: 0 10px 10px 0;
    border: 1px solid #b2b3b6;
    /*box-shadow: 0 0 15px #b2b3b6;*/
}

#bibliotheque .element .background input[type="radio"] {
    margin-left: 6px;
}

#bibliotheque .element .background {
    position: relative;
    float: left;
    width: 100%;
    height: 145px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;

}

#bibliotheque .element .dashboard {
    position: relative;
    float: left;
    width: 100%;
    height: 26px;
    background-color: #b1b2b2;
    border-bottom: 1px solid #b2b3b6;
}

#bibliotheque .element span.info {
    line-height: 12px;
    padding: 4px;
    margin: 2px 0 0 2px;
    display: inline-block;
    background-color: #e0e0e0;
    border: 1px solid #B2B3B6;
}

#bibliotheque .element a.delete-disc {
    float: right;
}

#bibliotheque .element a.edit {
    float: right;
}

#bibliotheque .element .legend {
    float: left;
    width: 100%;
    background-color: #D9D2CD;
    border-top: 1px solid #B2B3B6;
    cursor: pointer;
}

#bibliotheque .element .legend a {
    float: left;
    margin: 8px 8px 0 6px;
}

#bibliotheque .element .legend p {
    padding-left: 4px;
    width: 145px;
    font-size: 82%;
    margin: 6px 0;
}

#bibliotheque .element .legend input[type="text"] {
    width: 85px;
    font-size: 80%;
    top: 4px;
    position: relative;
}

#bibliotheque .nb_items {
    float: left;
    width: 100%;
    background-color: #b1b2b2;
    margin-top: 1px;
}

#bibliotheque .nb_items p {
    text-align: right;
    line-height: 26px;
    margin-right: 10px;
}

#upload_file {
    float: left;
    width: 100%;
    /*border-top: white solid 1px;*/
}

#upload_file h3 {
    line-height: 250%;
}

#upload_file button {
    float: left;
    margin: 8px 0 24px 16px;
}

#file-uploader {
    /*display: none;*/
}

.qq-uploader {
    cursor: pointer;
    float: left;
    width: 100%;
}

.qq-upload-drop-area {
    position: relative;
    top: -42px;
    width: 98%;
    height: 130px;
    background-color: #b1b2b2;
    border: dashed #666666 5px;
}

.qq-upload-drop-area:hover {
    background: #d0d0d0;
    border-color: #b1b2b2;
}

.qq-upload-drop-area p {
    position: relative;
    top: 45%;
    width: 100%;
    text-align: center;
}

.qq-upload-button {
    text-align: center;
    cursor: pointer;
}

.qq-upload-button input[type="file"] {
    position: relative;
    top: -48px;
    height: 38px;
    width: 99%;
    opacity: 0;
}

.qq-upload-button p {
    width: 100%;
    line-height: 40px;
    margin-bottom: 8px;
    background-color: white;
    cursor: pointer;
}

.qq-upload-list {
    width: 100%;
    text-align: center;
}

.qq-upload-file {
    width: 100%;
    text-align: center;
}

.qq-upload-currentsize {
    font-size: 650%;
    text-align: center;
}

/* Style Add delivery & provider address form _______________________________ */

.formAddressContainer {
    position: relative;
    float: left;
    width: 960px;
    height: 400px;
    margin-bottom: 10px;
    text-align: right
}

.formAddressContainer .listAddress {
    position: absolute;
    top: 0;
    left: 90px;
    width: 350px
}

.formAddressContainer .formAddress {
    position: absolute;
    top: 0;
    left: 530px;
    width: 350px
}

.formAddressContainer h2 {
    text-align: right;
    border-bottom: 2px solid #989898;
    text-transform: uppercase;
    font-size: 125%;
    font-weight: bold;
    margin-bottom: 20px
}

.formAddressContainer fieldset {
}

.formAddressContainer label {
    display: inline-block
}

.formAddressContainer span {
    margin-right: .35em
}

.formAddressContainer input {
    margin-bottom: 4px
}

.formAddressContainer textarea {
    margin-bottom: 4px;
    width: 200px;
    height: 72px
}

.formAddressContainer .buttons {
    position: absolute;
    width: 250px;
    top: 380px;
    left: 630px
}

.formAddressContainer .addAddressButton, .formAddressDiv .addProviderButton {
    position: absolute;
    top: 0;
    left: 90px
}

.formAddressContainer .buttons {
    position: absolute;
    width: 250px;
    height: 24px;
    top: 380px;
    left: 630px
}

.formAddressContainer .buttons button {
    margin-left: 3px
}

/* for IE */

.formAddressContainer .listForm {
    float: left;
    margin-top: 14px;
    width: 350px;
    height: 282px;
    border: 1px solid #989898;
    overflow-y: scroll
}

table.list {
    width: 333px
}

table.list tr:nth-child(odd) {
    background-color: #ffe2b1
}

table.list tr:nth-child(even) {
    background-color: #ffffffFFF
}

table.list tr:nth-child(odd):hover, table.list tr:nth-child(even):hover {
    background-color: #8DBDD8
}

table.list tr td {
    border-collapse: collapse;
    border: 1px solid #ffffffFFF;
    height: 30px
}

table.list tr td a {
    display: block;
    width: 96%;
    padding: 14px 0 10px 10px;
    cursor: pointer;
    font-size: 110%
}

table.list .icon {
    width: 28px
}

table.list .icon .trashButton {
    left: 5px
}

table.list .selected:nth-child(odd), table.list .selected:nth-child(even) {
    background-color: #4D7CB8
}

table.list .selected:nth-child(odd) a, table.list .selected:nth-child(even) a {
    color: #ffffffFFF
}

table.list .selected {
    background-color: #989898
}

/* for IE */

table.list .trashButton {
    padding: 0;
    top: -4px
}

#item-view,
#category-view {
    float: left;
    width: 100%;
    margin-top: 10px;
    -webkit-transition: width, height .5s
}

#item-view .item_content,
#category-view .category_content {
    float: left;
    width: 442px;
    height: 227px;
    border: 1px solid #ddd;
    /*background-color: #fffffffff;*/
    /*box-shadow: 0 0 10px #888;*/
    /*margin: 0 20px 20px 0;*/
    margin: 0 20px 20px 0;
    padding: 0;
    opacity: 1;
    overflow: hidden;
    background-size: contain;
    background-position: top left;
    background-repeat: no-repeat;
}

#item-view .item_content_left,
#category-view .category_content_left {
    float: left;
    width: 162px;
    height: 228px;
    /*padding: 10px 0 0 10px;*/
}

#item-view .item_content_right,
#category-view .category_content_right {
    float: right;
    width: 260px;
    height: 100%;
    padding: 0 10px;
    background-color: rgba(255, 255, 255, .85);
}

#item-view .item_content_right h5 span {
    top: -2px;
    position: relative;
}

#item-view .item_content_right input[type="checkbox"],
#category-view .category_content_right input[type="checkbox"] {
    position: relative;
    width: 13px;
    top: 2px;
}

#item-view .item_content_left .image,
#category-view .category_content_left .image {
    background-position: top left;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    height: 200px;
}

/*#item .item_content h1,*/
/*#category-view .category_content h1 {*/
/*font-size: 115%;*/
/*color: #111111;*/
/*font-weight: bold;*/
/*}*/

#item-view .item_content_right p,
#category-view .category_content_right p {
    /*height: 100px;
    overflow-y: auto;
    line-height: 16px;*/
    /* margin: 0;*/
} /* Move to /item/style.css*/

#item-view .item_content .closed,
#category-view .category_content .closed {
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    left: 26px;
    top: 28px;
}

#item-view .item_content .closed p,
#category-view .category_content .closed p {
    float: none;
    text-align: center;
    font-size: 200%;
    height: 24px;
    width: 136px;
    line-height: 28px;
    border: 0;
}

#item-view .item_content .noImage,
#category-view .category_content .noImage {
    background-color: #b1b2b2
}

#item-view .item_content img,
#category-view .category_content img {
    max-height: 120px;
    max-width: 80px;
}

#item-view .item_content p,
#category-view .category_content p {
    position: relative;
    color: #111111;
    text-shadow: none;
}

#item-view .item_content span.checkbox span,
#category-view .category_content span.checkbox span {
    display: block;
    position: relative;
    float: left;
    margin: 0;
    width: 74px;
    text-align: right
}

#item-view .item_content .checkbox input,
#category-view .category_content .checkbox input {
    position: relative;
    float: right;
    width: 12px;
    top: 7px;
    border: 0
}

/*#item .item_content .singleButton,
#category-view .category_content .singleButton {
    position: relative;
    float: right;
    margin-right: 10px;
}*/

#item-view .item_content .single_button,
#category-view .category_content .single_button {
    float: right;
    width: 100%;
    /*margin: 10px 0 0 0;*/
    height: 35px; /* si le bouton ou le lien n'est pas affiché */
}

#item-view .item_content .single_button a,
#category-view .category_content .single_button a,
#item-view .item_content .single_button button,
#category-view .category_content .single_button button {
    float: right;
}

#item-view .item_content .doubleButton,
#category-view .category_content .doubleButton {
    position: relative;
    float: right;
    margin-right: 10px;
}

#item-view .item_content_right h5 {
    /*height: 35px;
    margin-bottom: 0px;*/
    /* déplace dans /item/style.css */
}

#item-view .item_content_right p {
    /*line-height: 135%;*/
    height: 160px;
}

.itemSortablePlaceholderList {
    max-width: 458px;
    max-height: 148px;
    border: 1px dashed #818285;
    background-color: #ffe2b1
}

/* Fin du style _____________________________________________________________ */
/* Style pour l'article et la catégorie _____________________________________ */

#sortable {
    cursor: move;
}

/* Notation __________________________________________________________________*/

.grade {
    float: right;
    margin-right: 10px;
    height: 30px;
    width: 180px;
}

.grade p {
    text-align: right;
}

.grade_user_text, .grade_average_text {
    float: left;
    width: 86px;
    height: 15px;
}

.grade_user_stars, .grade_average_stars {
    float: left;
    width: 90px;
    height: 15px;
}

.star_empty, .star_user, .star_average {
    float: left;
    width: 18px;
    height: 20px;
    background-repeat: no-repeat;
    background-position: -1px -5px;
}

.star_empty {
    background-image: url('../image/star-empty.png');
}

.star_user {
    background-image: url('../image/star-yellow.png');
}

.star_average {
    background-image: url('../image/star-green.png');
}

.boxMoreInfo {
    width: 460px;
    height: 280px;
    padding: 10px;
    background-color: #ffffffFFF
}

.boxMoreInfo p {
    font-size: 110%;
    line-height: 20px;
    color: #818285
}

.boxMoreInfo p span {
    font-weight: bold;
    padding: 2px 4px 1px 4px;
    font-size: 125%;
    line-height: 16px;
    color: #989898;
    background-color: #818285;
    border-radius: 3px
}

.boxMoreInfo ul li {
    padding-left: 60px;
    font-size: 110%;
    line-height: 16px;
    color: #818285
}

.boxMoreInfo ul li:before {
    content: "- "
}

.boxMoreInfo .button {
    position: absolute;
    width: 120px;
    bottom: 20px;
    left: 50%;
    margin-left: -60px
}

div.span6.thumbnailAction {
    height: auto;
    width: 141px;
    min-height: 200px;
}

.thumbnailAction img {
    width: 141px;
    border: 1px solid #ddd;
}

.thumbnailAction .action {
    margin-top: -35px;
    width: 100%;
}

.thumbnailAction .action a,
.thumbnailAction .action button {
    display: inline-block;
    width: 64px;
    padding: 8px;
    /*background-color: rgba(0, 0, 0, 0.25);
    color: #ffffff;*/
    opacity: 0.75;
    transition-duration: 300ms;
}

.thumbnailAction:hover .action a,
.thumbnailAction:hover .action button {
    background-color: rgba(0, 0, 0, 0.75);
    /*opacity: 1;*/
}

.thumbnailAction .action a:first-child,
.thumbnailAction .action button:first-child {
    margin-right: 5px;
}

.navbar-inner {
    width: 99%;
    min-height: 40px;
    padding-right: 0;
    padding-left: 0;
    margin-left: 1%;
    background-color: #ffffff;
    background-image: none;
    background-repeat: repeat-x;
    border: none;
    border-bottom: 1px solid rgb(224, 224, 224);
    border-radius: 0;
    box-shadow: none;
}

.transparency-pattern {
    width: 150px;
    height: 150px;
    background-image: url('../image/pattern-transparent.gif');
    background-repeat: repeat;
}

#myCarousel.carousel {
    margin-left: -1%;
    width: 102%;
}

#myCarousel .carousel-inner {
    height: 250px;
}

#myCarousel .hero-unit {
    height: 100%;
    border-radius: 0px;
}

#myCarousel .hero-unit {
    padding: 30px 0 60px 46px;
}

#myCarousel .private {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 10px 20px;
    color: #555;
    background-color: rgba(255, 255, 255, .75);
}

/*.category-folder {*/
/*background-color: #FDFDFD;*/
/*float: left;*/
/*width: 265px;*/
/*height: 250px;*/
/*margin: 0 30px 30px 0;*/
/*border: #E4E4E4 solid 1px;*/
/*padding: 0;*/
/*}*/

/*.category-folder .visual {*/
/*width: 263px;*/
/*height: 186px;*/
/*background-position: top left;*/
/*background-repeat: no-repeat;*/
/*background-size: contain;*/
/*}*/

/*.category-folder h5 {*/
/*margin: 0 5px;*/
/*}*/

/*.category-folder.disabled {*/
/*opacity: 0.35;*/
/*}*/

/*.category-folder a {*/
/*display: inline-block;*/
/*width: 100%;*/
/*height: 100%;*/
/*text-decoration: none;*/
/*}*/

/*.category-folder a h5 {*/
/*margin-top: 185px;*/
/*margin-left: 15px;*/
/*font-weight: normal;*/
/*font-size: 14px;*/
/*line-height: 1.4em;*/
/*text-decoration: none;*/
/*}*/

/*.category-folder a img {*/
/*display: block;*/
/*position: relative;*/
/*!*width: 180px;*!*/
/*margin: 0 auto;*/
/*}*/

/*.category-folder div.mask {*/
/*opacity: 0;*/
/*z-index: 1;*/
/*width: 265px;*/
/*height: 251px;*/
/*background-color: rgba(0, 0, 0, 0.75);*/
/*transition: all 300ms ease 0s;*/
/*position: relative;*/
/*top: -251px;*/
/*-webkit-transition: 300ms;*/
/*-moz-transition: 300ms;*/
/*-o-transition: 300ms;*/
/*transition: 300ms;*/
/*}*/

/*.category-folder div.mask:hover {*/
/*opacity: 1;*/
/*-webkit-transition: 300ms;*/
/*-moz-transition: 300ms;*/
/*-o-transition: 300ms;*/
/*transition: 300ms;*/
/*}*/

/*.category-folder div.mask a {*/
/*position: relative;*/
/*padding: 10px;*/
/*border: 2px solid white;*/
/*color: white;*/
/*left: 50%;*/
/*margin-left: -75px;*/
/*width: 150px;*/
/*height: 45px;*/
/*border-radius: 2px;*/
/*text-transform: uppercase;*/
/*text-align: center;*/
/*cursor: pointer;*/
/*text-decoration: none;*/
/*line-height: 24px;*/
/*}*/

/*.category-folder div.mask div.horizontal-separator {*/
/*float: left;*/
/*position: relative;*/
/*left: 33px;*/
/*height: 1px;*/
/*width: 200px;*/
/*border-top: 2px solid white;*/
/*margin-top: 20px;*/
/*}*/

/*.category-folder div.mask div.first-button,*/
/*.category-folder div.mask div.second-button {*/
/*position: relative;*/
/*float: left;*/
/*width: 100%;*/
/*height: 45px;*/
/*left: 0;*/
/*overflow: hidden;*/
/*margin-top: 15px;*/
/*}*/

/*.category-folder div.mask div.one-button {*/
/*position: relative;*/
/*float: left;*/
/*width: 100%;*/
/*height: 100%;*/
/*left: 0;*/
/*overflow: hidden;*/
/*top: -36px;*/
/*}*/

/*.category-folder div.mask div.first-button a {*/
/*position: relative;*/
/*-moz-transition: 350ms;*/
/*}*/

/*.category-folder div.mask div.first-button a:hover,*/
/*.category-folder div.mask div.second-button a:hover {*/
/*background-color: #fffffffff;*/
/*color: #333;*/
/*}*/

/*.category-folder div.mask:hover div.first-button a {*/
/*-moz-transition: 650ms;*/
/*}*/

/*.category-folder div.mask div.second-button a {*/
/*position: relative;*/
/*!*top: -50px;*!*/
/*-moz-transition: 350ms;*/
/*}*/

/*.category-folder div.mask:hover div.second-button a {*/
/*!*top: 40px;*!*/
/*-moz-transition: 650ms;*/
/*}*/

/*a.select-category i {*/
/*margin-right: 4px;*/
/*margin-top: 0;*/
/*}*/

/*.category-folder h5 {*/
/*font-weight: normal;*/
/*height: 65px;*/
/*color: #66747D;*/
/*}*/

.item_content .badge {
    margin: 2px;
}

.item_content hr {
    margin: 0;
}

.item_content div.mask {
    opacity: 0;
    position: relative;
    z-index: 1;
    width: 443px;
    height: 228px;
    background-color: rgba(0, 0, 0, .75);
    -webkit-transition: 300ms;
    -moz-transition: 300ms;
    -o-transition: 300ms;
    transition: 300ms;
}

.item_content div.mask:hover {
    opacity: 1;
    -webkit-transition: 300ms;
    -moz-transition: 300ms;
    -o-transition: 300ms;
    transition: 300ms;
}

.item_content div.mask a {
    position: relative;
    padding: 10px;
    border: 2px solid white;
    color: white;
    top: 50%;
    left: 50%;
    margin-top: -20px;
    margin-left: -70px;
    width: 120px;
    height: 20px;
    border-radius: 2px;
    text-transform: uppercase;
    text-align: center;
    cursor: pointer;
    text-decoration: none;
}

.item_content div.mask div.horizontal-separator {
    float: left;
    position: relative;
    left: 40px;
    height: 1px;
    width: 360px;
    border-top: 2px solid white;
    top: -229px;
}

.item_content div.mask div.first-button,
.item_content div.mask div.second-button {
    position: relative;
    float: left;
    width: 100%;
    height: 113px;
    left: 0;
    overflow: hidden;
}

.item_content div.mask div.first-button {
    top: -228px;
}

.item_content div.mask div.second-button {
    top: -229px;
}

.item_content div.mask div.one-button {
    position: relative;
    float: left;
    width: 100%;
    height: 100%;
    left: 0;
    overflow: hidden;
}

.item_content div.mask div.first-button a {
    position: relative;
    top: 150px;
    -moz-transition: 350ms;
}

.item_content div.mask:hover div.first-button a {
    top: 52px;
    -moz-transition: 650ms;
}

.item_content div.mask div.second-button a {
    position: relative;
    top: -50px;
    -moz-transition: 350ms;
}

.item_content div.mask:hover div.second-button a {
    top: 38px;
    -moz-transition: 650ms;
}

a.select-item i {
    margin-right: 4px;
    margin-top: 0;
}

#modalAlert .modal-header.error {
    background-color: var(--modal-alert-error-bkg-color);
}

#modalAlert .modal-header.error h3 {
    color: var(--modal-alert-error-title-color);
}

#modalAlert .modal-body p.error {
    font-family: "Courier New", Courier, monospace;
    padding: 0 0 0 15px;
    margin: 0 0 20px;
    border-left: 5px solid #eeeeee;
}

#modalAlert .modal-header.warning {
    background-color: var(--modal-alert-warning-bkg-color);
}

#modalAlert .modal-header.warning h3 {
    color: var(--modal-alert-warning-title-color);
}

#modalAlert .modal-header.success {
    background-color: var(--modal-alert-success-bkg-color);
}

#modalAlert .modal-header.success h3 {
    color: var(--modal-alert-sucess-title-color);
}

.preview {

}

.preview-left-panel {
    border-right: 1px solid #d0d0d0;
    padding-right: 10px;
}

.switch {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 62px;
    height: 25px;
    padding: 3px;
    background-color: white;
    border-radius: 2px;
    /*border-radius: 18px;*/
    /*box-shadow: inset 0 -1px white, inset 0 1px 1px rgba(0, 0, 0, 0.05);*/
    cursor: pointer;
    /*background-image: -webkit-linear-gradient(top, #eeeeee, white 25px);*/
    /*background-image: -moz-linear-gradient(top, #eeeeee, white 25px);*/
    /*background-image: -o-linear-gradient(top, #eeeeee, white 25px);*/
    /*background-image: linear-gradient(to bottom, #eeeeee, white 25px);*/
}

.switch-input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
}

.switch-label {
    position: relative;
    display: block;
    height: 20px;
    font-size: 10px;
    text-transform: uppercase;
    background: var(--gray-50);
    border-radius: inherit;
    /*box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15);*/
    -webkit-transition: 0.15s ease-out;
    -moz-transition: 0.15s ease-out;
    -o-transition: 0.15s ease-out;
    transition: 0.15s ease-out;
    -webkit-transition-property: opacity background;
    -moz-transition-property: opacity background;
    -o-transition-property: opacity background;
    transition-property: opacity background;
}

.switch-label:before, .switch-label:after {
    position: absolute;
    top: 50%;
    margin-top: -.5em;
    line-height: 1;
    -webkit-transition: inherit;
    -moz-transition: inherit;
    -o-transition: inherit;
    transition: inherit;
}

.switch-label:before {
    content: attr(data-off);
    right: 8px;
    color: #aaa;
    text-shadow: 0 1px rgba(255, 255, 255, 0.5);
}

.switch-label:after {
    content: attr(data-on);
    left: 11px;
    color: white;
    text-shadow: 0 1px rgba(0, 0, 0, 0.2);
    opacity: 0;
}

.switch-input:checked ~ .switch-label {
    background: var(--system-success);
    /*box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2);*/
}

.switch-input:checked ~ .switch-label:before {
    opacity: 0;
}

.switch-input:checked ~ .switch-label:after {
    opacity: 1;
}

.switch-handle {
    position: absolute;
    top: 4px;
    left: 4px;
    width: 18px;
    height: 18px;
    background: white;
    border-radius: inherit;
    /*border-radius: 10px;*/
    /*box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2);*/
    /*background-image: -webkit-linear-gradient(top, white 40%, #f0f0f0);*/
    /*background-image: -moz-linear-gradient(top, white 40%, #f0f0f0);*/
    /*background-image: -o-linear-gradient(top, white 40%, #f0f0f0);*/
    /*background-image: linear-gradient(to bottom, white 40%, #f0f0f0);*/
    -webkit-transition: left 0.15s ease-out;
    -moz-transition: left 0.15s ease-out;
    -o-transition: left 0.15s ease-out;
    transition: left 0.15s ease-out;
}

.switch-handle:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -6px 0 0 -6px;
    width: 12px;
    height: 12px;
    background: white;
    /*background: #f9f9f9;*/
    border-radius: 6px;
    /*box-shadow: inset 0 1px rgba(0, 0, 0, 0.02);*/
    /*background-image: -webkit-linear-gradient(top, #eeeeee, white);*/
    /*background-image: -moz-linear-gradient(top, #eeeeee, white);*/
    /*background-image: -o-linear-gradient(top, #eeeeee, white);*/
    /*background-image: linear-gradient(to bottom, #eeeeee, white);*/
}

.switch-input:checked ~ .switch-handle {
    left: 40px;
    /*box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2);*/
}

.switch-green > .switch-input:checked ~ .switch-label {
    background: #4fb845;
}





.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    background: #f9F9f9;
    box-shadow: none;
}

.dataTables_filter {
    margin-right: 7px;
}

.dataTables_filter input[type='search'] {
    padding: 1px 6px;
}

address#order-delivery-address,
address#order-attention-of-address {
    margin-bottom: 0;
}

div.downloadFile {
    display: inline-block;
    margin: 20px;
}

div.downloadFile p.lead {
    font-weight: 400;
    color: #555;
}

.breadcrumb {
    background-color: #f5f5f5;
}


#accountSelector {
    width: 100% !important;
}

.form-connectAccount > span.select2 {
    width: 100%;
}

#select2-accountSelector-container {
    font-size: 1.2em;
}

.select2-container .select2-selection--single {
    height: 40px;
}


.select2-selection__choice {
padding-left: 23px !important;
}

/*===== Modale offcanevas for filters === */

.offcanevas-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1040;
    width: 100vw;
    height: 100vh;
    background-color: #000;
}

.offcanevas-backdrop.fade {
    opacity: 0;
}

.fade {
    transition: opacity .15s linear;
}

.offcanevas-backdrop.show {
    opacity: .5;
}

.offcanvas {
    position: fixed;
    bottom: 0;
    z-index: 1050;
    display: flex;
    flex-direction: column;
    max-width: 100%;
    visibility: hidden;
    background-color: #fff;
    background-clip: padding-box;
    outline: 0;
    transition: transform .3s ease-in-out;
}

.offcanvas-end {
    top: 0;
    right: 0;
    border-left: 1px solid rgba(0, 0, 0, .2);
    transform: translateX(100%);
}

.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: 30vh;
    max-height: 100%;
    border-bottom: 1px solid rgba(0, 0, 0, .2);
    transform: translateY(-100%);
}

.offcanvas-bottom {
    right: 0;
    left: 0;
    height: 30vh;
    max-height: 100%;
    border-top: 1px solid rgba(0, 0, 0, .2);
    transform: translateY(100%);
}

.offcanvas-start {
    top: 0;
    left: 0;
    width: 400px;
    border-right: 1px solid rgba(0, 0, 0, .2);
    transform: translateX(-100%);
}

.offcanvas.show {
    transform: none;
}

.offcanvas-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1rem;
}

.offcanvas-title {
    margin-bottom: 0;
    line-height: 1.5;
}

.offcanvas-header .btn-close {
    padding: 0.5rem 0.5rem;
    margin-top: -0.5rem;
    margin-right: -0.5rem;
    margin-bottom: -0.5rem;
}

[type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled), button:not(:disabled) {
    cursor: pointer;
}

.btn-close {
    box-sizing: content-box;
    width: 1em;
    height: 1em;
    padding: 0.25em 0.25em;
    color: #000;
    /*background: transparent url(data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e) center/1em auto no-repeat;
    */
    border: 0;
    border-radius: 0.25rem;
    opacity: .5;
}

.offcanvas-body {
    flex-grow: 1;
    padding: 1rem 1rem;
    overflow-y: auto;
}

#offcanvasBasketRight .offcanvas-body {
    margin-bottom: 60px; /* à cause du footer "poserBy Xo retail" */
}

.offcanvas-body details {
    margin-bottom: 1rem;
}

.offcanvas-body details[open] {
    font-weight: bold;
}

.offcanvas-body details summary {
    text-transform: uppercase;
    letter-spacing: 0.08rem;
}

.xo-basket-actions {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: var(--spacing-xl, 2rem);
    border-top: var(--border-thin, 1px) solid var(--color-border, var(--gray-200));
    margin-top: var(--spacing-xl, 2rem);
    gap: 1rem;
    flex-wrap: wrap;
}

#basketModal #offcanvasBasketRight {
    width: 30% !important;
}

.basket-visual-container {
    width: 4rem;
    padding: 0.2rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(0, 0, 0, 0.2);
    background-color: #fff;
}

.basket-visual-img {
    height: auto;
    width: fit-content;
}

.basket-art-title {
    font-weight: 600;
}

.basket-art-description {
    color: var(--text-secondary);
    font-size: 0.75rem;
    line-height: 1.5;
}


/* Hack css pour petit écran */

.modal-body {
    max-height: 70vh !important;
    padding: 15px;
    overflow-y: scroll !important;
}


/*==== pour les tableaux ====*/

.xo-table-cell-actions {
    display: flex;
    gap: 1rem;
}




/*===== Hack pour dataTable ======*/
table.dataTable.stripe tbody tr.odd, table.dataTable.table-striped tbody tr.odd, table.dataTable.display tbody tr.odd {
    background-color: transparent !important;
}


