/*
 * Surcharge visuelle de l'arbre Wunderbaum (Group/Territory).
 * Rapproche le rendu de l'ancien jquery.treetable (Bootstrap 3) : bordure fine,
 * lignes zébrées, icônes dossier/fichier neutres, boutons d'action jamais tronqués.
 * Couleurs volontairement neutres (gris) pour rester compatibles avec toutes les
 * chartes d'entité (le bandeau/logo change de couleur selon l'instance, pas l'arbre).
 */
div.wunderbaum {
    --wb-font-stack: inherit;
    --wb-node-text-color: #333333;
    --wb-border-color: #dddddd;
    --wb-header-color: #f5f5f5;
    --wb-background-color: #ffffff;
    --wb-alternate-row-color: #f9f9f9;
    --wb-alternate-row-color-hover: #f0f0f0;
    --wb-hover-color: #f5f5f5;
    --wb-hover-border-color: #f5f5f5;
    --wb-grid-color: #eeeeee;
    --wb-active-color: #eaeaea;
    --wb-active-hover-color: #e0e0e0;
    --wb-active-border-color: #cccccc;
    --wb-active-hover-border-color: #bbbbbb;
    --wb-active-color-grayscale: #eeeeee;
    --wb-active-border-color-grayscale: #cccccc;
    --wb-active-hover-color-grayscale: #e2e2e2;
    --wb-focus-border-color: #adadad;
    /* --wb-row-outer-height / --wb-row-inner-height : pilotées par l'option JS
       `rowHeightPx` (tree_controller.js), pas ici — Wunderbaum calcule la position
       (top) de chaque ligne à partir de cette option ; les redéfinir seulement en
       CSS désynchronise hauteur visuelle et positionnement (lignes qui se
       chevauchent). */
    --wb-icon-outer-height: 28px;
    --wb-icon-outer-width: 26px;
    --wb-icon-height: 15px;
    --wb-icon-width: 15px;
    --wb-icon-padding-y: 6px;
    --wb-icon-padding-x: 5px;
    --wb-col-padding-x: 8px;
    --wb-header-height: 38px;

    border: 1px solid var(--wb-border-color);
    border-radius: 4px;
    font-size: 13px;
}

/* Checkbox / indenteurs / expander / icône dossier-fichier / titre sont des
   inline-block avec vertical-align: baseline par défaut : la ligne de base d'une
   glyphe FontAwesome varie selon le pictogramme (case à cocher, chevron, dossier…),
   ce qui les décale verticalement les uns par rapport aux autres. On les aligne
   tous au centre de la ligne. */
div.wunderbaum span.wb-node i.wb-checkbox,
div.wunderbaum span.wb-node i.wb-expander,
div.wunderbaum span.wb-node i.wb-icon,
div.wunderbaum span.wb-node i.wb-indent,
div.wunderbaum span.wb-node span.wb-title {
    vertical-align: middle;
}

/* Espace entre checkbox / chevron plier-déplier / icône dossier-fichier / titre.
   i.wb-expander n'apparaît qu'une fois par ligne (juste avant l'icône), donc lui
   donner une marge est sans risque. Seuls les i.wb-indent purs (sans la classe
   wb-expander) se répètent une fois par niveau de profondeur : ceux-là ne doivent
   pas recevoir de marge individuelle, pour que les niveaux restent alignés
   verticalement entre les lignes. */
div.wunderbaum span.wb-node i.wb-checkbox,
div.wunderbaum span.wb-node i.wb-expander,
div.wunderbaum span.wb-node i.wb-icon {
    margin-right: 4px;
}
div.wunderbaum span.wb-node span.wb-title {
    margin-left: 2px;
}

div.wunderbaum div.wb-header span.wb-col {
    font-weight: 600;
    color: #333333;
}

/* Icônes dossier/fichier neutres (indépendantes de la charte de l'entité) ;
   contraste AA (>=4.5:1 sur fond blanc) car elles portent une info structurelle. */
div.wunderbaum span.wb-node i.wb-icon.fa-folder-closed,
div.wunderbaum span.wb-node i.wb-icon.fa-folder-open {
    color: #5f5f5f;
}
div.wunderbaum span.wb-node i.wb-icon.fa-file {
    color: #767676;
}

/* Lignes "contenu créé par une autre entité" (équivalent de .table > tr.warning
   pour l'ancien rendu HTML table, ici appliqué aux div.wb-row de Wunderbaum). */
div.wunderbaum div.wb-node-list div.wb-row.warning:not(.wb-active):not(.wb-selected) {
    background-color: #fcf8e3;
}
div.wunderbaum div.wb-node-list div.wb-row.warning:hover {
    background-color: #faf2cc;
}

/* Colonne actions : jamais tronquée, boutons centrés verticalement (position
   voulue inchangée, cf. tree_controller.js columns: [{id:'*'}, {id:'actions'}]). */
div.wunderbaum span.wb-col.wb-col-actions {
    display: flex;
    align-items: center;
    gap: 6px;
    overflow: visible;
}
div.wunderbaum span.wb-col.wb-col-actions a.btn {
    line-height: 1.2;
}
