/**
 * CardioNET — harmonisation de DOCman (Joomlatools)
 *
 * Chargée par le template uniquement sur les pages de com_docman, si l'option
 * « Harmoniser DOCman » est active. DOCman lui-même n'est pas modifié : cette
 * feuille survit à ses mises à jour.
 *
 * DOCman insère site.min.css APRÈS les feuilles du template (ancienne API
 * addStyleSheet). Toutes les règles sont donc préfixées par
 * `.cn .k-ui-namespace.com_docman` (spécificité 0,3,0), soit deux classes de plus
 * que les règles équivalentes de DOCman (`.k-ui-namespace …`). Les rares
 * `!important` neutralisent ceux de Bootstrap/Cassiopeia (`.bg-success`,
 * `.form-group`) ou la largeur écrite en ligne par select2.
 *
 * Testé avec DOCman 6.2.0 : mises en page Liste, Tableau, Arborescence,
 * Document, Recherche et Proposer un document.
 */

/* ---------------------------------------------------------------------
 * 1. Jetons locaux
 * ------------------------------------------------------------------- */
.cn .k-ui-namespace.com_docman {
    --dm-radius: var(--cn-radius-lg, 12px);
    --dm-card-shadow: var(--cn-shadow-sm);
    --dm-card-hover: 0 8px 22px -14px rgba(var(--cn-primary-rgb), .55);
    --dm-chev-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 6 8 10.5 12.5 6' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    --dm-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='7' cy='7' r='4.6' fill='none' stroke='black' stroke-width='1.6'/%3E%3Cpath d='m10.4 10.4 3.2 3.2' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
    --dm-download: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 2.5v7.8M4.6 7 8 10.4 11.4 7M3 13.5h10' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    --dm-edit: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M10.6 2.9a1.5 1.5 0 0 1 2.1 0l.4.4a1.5 1.5 0 0 1 0 2.1L6.4 12.1 3 13l.9-3.4z' fill='none' stroke='black' stroke-width='1.5' stroke-linejoin='round'/%3E%3Cpath d='m9.4 4.1 2.5 2.5' fill='none' stroke='black' stroke-width='1.5'/%3E%3C/svg%3E");
    --dm-trash: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2.8 4.3h10.4M6.3 4.3V2.8h3.4v1.5M4.3 4.3l.6 8.9h6.2l.6-8.9M6.9 6.8v4M9.1 6.8v4' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    --dm-select: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 6 8 10.5 12.5 6' fill='none' stroke='%235d6670' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

    color: var(--cn-text);
}

/* Couleur des icônes de fichiers selon le type (le reste : couleur d'action). */
.cn .k-ui-namespace.com_docman .k-icon-type-pdf { --dm-type: #c62828; }
.cn .k-ui-namespace.com_docman :is(.k-icon-type-doc, .k-icon-type-docx, .k-icon-type-odt, .k-icon-type-rtf, .k-icon-type-pages) { --dm-type: #1d5ba8; }
.cn .k-ui-namespace.com_docman :is(.k-icon-type-xls, .k-icon-type-xlsx, .k-icon-type-ods, .k-icon-type-csv, .k-icon-type-numbers) { --dm-type: #2e7d32; }
.cn .k-ui-namespace.com_docman :is(.k-icon-type-ppt, .k-icon-type-pptx, .k-icon-type-odp, .k-icon-type-key) { --dm-type: #c25e0c; }
.cn .k-ui-namespace.com_docman :is(.k-icon-type-jpg, .k-icon-type-jpeg, .k-icon-type-png, .k-icon-type-gif, .k-icon-type-svg, .k-icon-type-webp, .k-icon-type-heic) { --dm-type: #7b4fb5; }
.cn .k-ui-namespace.com_docman :is(.k-icon-type-mp4, .k-icon-type-mov, .k-icon-type-avi, .k-icon-type-mkv, .k-icon-type-webm, .k-icon-type-mp3, .k-icon-type-wav, .k-icon-type-m4a) { --dm-type: #00838f; }
.cn .k-ui-namespace.com_docman :is(.k-icon-type-zip, .k-icon-type-rar, .k-icon-type-7z, .k-icon-type-gz, .k-icon-type-tar) { --dm-type: #8a5300; }

.cn .k-ui-namespace.com_docman [class*="k-icon-document-"] {
    color: var(--dm-type, var(--cn-primary));
}

/* ---------------------------------------------------------------------
 * 2. En-têtes
 * ------------------------------------------------------------------- */
.cn .k-ui-namespace.com_docman .koowa_header {
    display: flex;
    align-items: center;
    gap: 12px;
    width: auto;
    line-height: 1.3;
}

.cn .k-ui-namespace.com_docman .koowa_header::before,
.cn .k-ui-namespace.com_docman .koowa_header::after {
    content: none;
}

.cn .k-ui-namespace.com_docman .koowa_header__item {
    display: block;
    width: auto;
    min-width: 0;
}

.cn .k-ui-namespace.com_docman .koowa_header__item--image_container {
    flex: none;
    width: auto;
    padding: 0;
}

/* Pastille d'icône (titres de catégorie, cartes, page document) */
.cn .k-ui-namespace.com_docman .koowa_header__item--image_container .k-icon--size-medium {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    font-size: 20px;
    color: var(--dm-type, var(--cn-primary));
    background: var(--cn-primary-soft);
    background: color-mix(in srgb, var(--dm-type, var(--cn-primary)) 11%, #fff);
    border-radius: 10px;
}

/* Titre de la catégorie affichée (titre de page) */
.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style) > .koowa_header {
    margin: 0 0 .5rem;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: -.01em;
}

.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style) > .docman_description {
    max-width: 75ch;
    margin: 0 0 1.25rem;
    color: var(--cn-muted);
}

.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style) > .docman_description > :last-child {
    margin-bottom: 0;
}

/* Intertitres « Catégories » et « Documents » : discrets, comme le titre du menu latéral */
.cn .k-ui-namespace.com_docman .docman_block > .koowa_header,
.cn .k-ui-namespace.com_docman .koowa_header--bottom_margin {
    display: block;
    margin: 1.6rem 0 .7rem;
    font-size: 12.5px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--cn-muted);
}

/* Image de catégorie */
.cn .k-ui-namespace.com_docman .docman_thumbnail {
    margin: 0 16px 12px 0;
    padding: 0;
    border: 1px solid var(--cn-border);
    border-radius: var(--cn-radius);
    overflow: hidden;
}

.cn .k-ui-namespace.com_docman .docman_thumbnail img {
    display: block;
}

/* ---------------------------------------------------------------------
 * 3. Barre d'outils (« Télécharger la sélection », « Soumettre »)
 * ------------------------------------------------------------------- */
.cn .k-ui-namespace.com_docman .k-toolbar {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
    margin: 0 0 12px;
    padding: 0;
    background: none;
    border: 0;
}

.cn .k-ui-namespace.com_docman .k-toolbar .btn {
    min-height: 36px;
    margin: 0;
    padding: 0 12px;
    font-size: 14px;
    text-decoration: none;
}

.cn .k-ui-namespace.com_docman .k-toolbar .btn [class^="k-icon-"] {
    font-size: 15px;
    color: var(--cn-primary);
}

/* « Ajouter un document » (vert chez DOCman) : couleur d'action du site */
.cn .k-ui-namespace.com_docman .k-toolbar .btn-success {
    --btn-color: var(--cn-primary-fg);
    --btn-bg: var(--cn-primary);
    --btn-border-color: var(--cn-primary);
    --btn-hover-color: var(--cn-primary-fg);
    --btn-hover-bg: var(--cn-primary-dark);
    --btn-hover-border-color: var(--cn-primary-dark);
    --btn-active-color: var(--cn-primary-fg);
    --btn-active-bg: var(--cn-primary-dark);
    --btn-active-border-color: var(--cn-primary-dark);
}

.cn .k-ui-namespace.com_docman .k-toolbar :is(.btn-success, .btn-primary) [class^="k-icon-"] {
    color: inherit;
}

.cn .k-ui-namespace.com_docman .k-toolbar .btn.disabled,
.cn .k-ui-namespace.com_docman .k-toolbar .btn.k-is-disabled {
    opacity: .55;
}

.cn .k-ui-namespace.com_docman .k-toolbar .k-button-save {
    min-height: 42px;
    padding: 0 18px;
    color: var(--cn-primary-fg);
    background: var(--cn-primary);
    border: 1px solid var(--cn-primary);
}

.cn .k-ui-namespace.com_docman .k-toolbar .k-button-save:hover,
.cn .k-ui-namespace.com_docman .k-toolbar .k-button-save:focus-visible {
    color: var(--cn-primary-fg);
    background: var(--cn-primary-dark);
    border-color: var(--cn-primary-dark);
}

.cn .k-ui-namespace.com_docman .k-toolbar .k-button-save [class^="k-icon-"] {
    color: inherit;
}

/* ---------------------------------------------------------------------
 * 4. Recherche et filtres
 * ------------------------------------------------------------------- */
.cn .k-ui-namespace.com_docman .k-filters {
    min-height: 0;
    margin: 0 0 16px;
    padding: 0;
    background: var(--cn-bg);
    border: 1px solid var(--cn-border);
    border-radius: var(--dm-radius);
    box-shadow: var(--dm-card-shadow);
    overflow: hidden;
}

/* Bouton d'ouverture : loupe, libellé, chevron */
.cn .k-ui-namespace.com_docman .k-filters--toggleable .k-checkbox-dropdown-label {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 11px 16px;
    font-weight: 600;
    color: var(--cn-text);
    text-decoration: none;
    cursor: pointer;
    user-select: none;
    transition: background-color .15s ease;
}

.cn .k-ui-namespace.com_docman .k-filters--toggleable .k-checkbox-dropdown-label:hover {
    text-decoration: none;
}

@media (hover: hover) {
    .cn .k-ui-namespace.com_docman .k-filters--toggleable .k-checkbox-dropdown-label:hover {
        background: var(--cn-subtle);
    }
}

.cn .k-ui-namespace.com_docman .k-filters--toggleable .k-checkbox-dropdown-toggle:focus-visible ~ .k-checkbox-dropdown-label {
    box-shadow: inset 0 0 0 3px rgba(var(--cn-primary-rgb), .25);
}

.cn .k-ui-namespace.com_docman .k-filters--toggleable .k-checkbox-dropdown-label::before,
.cn .k-ui-namespace.com_docman .k-filters--toggleable .k-checkbox-dropdown-label::after {
    content: "";
    position: static;
    display: block;
    flex: none;
    margin: 0;
    font-size: 0;
    border: 0;
    opacity: 1;
    transform: none;
    background: currentColor;
    -webkit-mask: var(--dm-search) center / contain no-repeat;
    mask: var(--dm-search) center / contain no-repeat;
}

.cn .k-ui-namespace.com_docman .k-filters--toggleable .k-checkbox-dropdown-label::before {
    width: 17px;
    height: 17px;
    color: var(--cn-primary);
}

.cn .k-ui-namespace.com_docman .k-filters--toggleable .k-checkbox-dropdown-label::after {
    width: 16px;
    height: 16px;
    margin-left: auto;
    color: var(--cn-muted);
    -webkit-mask-image: var(--dm-chev-down);
    mask-image: var(--dm-chev-down);
    transition: transform .2s var(--cn-ease);
}

.cn .k-ui-namespace.com_docman .k-filters--toggleable .k-checkbox-dropdown-toggle:checked ~ .k-checkbox-dropdown-label::before {
    transform: none;
}

.cn .k-ui-namespace.com_docman .k-filters--toggleable .k-checkbox-dropdown-toggle:checked ~ .k-checkbox-dropdown-label::after {
    transform: rotate(180deg);
}

/* Contenu : champs alignés sur une ligne quand la place le permet */
.cn .k-ui-namespace.com_docman .k-filters .k-checkbox-dropdown-content {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 12px 16px;
    padding: 16px;
}

.cn .k-ui-namespace.com_docman .k-filters--toggleable .k-checkbox-dropdown-content {
    padding-top: 0;
    padding-bottom: 0;
    transition: opacity .2s ease;
}

.cn .k-ui-namespace.com_docman .k-filters--toggleable .k-checkbox-dropdown-toggle:checked ~ .k-checkbox-dropdown-content {
    padding-top: 14px;
    padding-bottom: 16px;
    border-top: 1px solid var(--cn-border);
}

.cn .k-ui-namespace.com_docman .k-filters .form-group,
.cn .k-ui-namespace.com_docman .k-filters--toggleable .k-checkbox-dropdown-content > .form-group:first-child {
    flex: 1 1 200px;
    min-width: 0;
    margin: 0 !important; /* Cassiopeia : .form-group { margin-bottom: 1rem !important } */
}

.cn .k-ui-namespace.com_docman .k-filters .form-group > label,
.cn .k-ui-namespace.com_docman .k-filters .control-label {
    display: block;
    margin: 0 0 5px;
    font-size: .95em;
    font-weight: 600;
    color: var(--cn-text);
}

.cn .k-ui-namespace.com_docman .k-filters input[type="search"]:not(.select2-search__field),
.cn .k-ui-namespace.com_docman .k-filters input[type="text"]:not(.select2-search__field) {
    height: auto;
    min-height: 42px;
}

.cn .k-ui-namespace.com_docman .k-filters .btn {
    flex: none;
    margin: 0;
}

.cn .k-ui-namespace.com_docman .k-filters .btn-link {
    text-decoration: none;
}

.cn .k-ui-namespace.com_docman .k-filters .btn-link:hover {
    text-decoration: underline;
}

/* Tri et nombre par page : listes déroulantes au format du site */
.cn .k-ui-namespace.com_docman .docman_sorting {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
    margin: 0 0 12px;
}

.cn .k-ui-namespace.com_docman .docman_sorting label.control-label {
    margin: 0;
    font-size: 13.5px;
    font-weight: 500;
    color: var(--cn-muted);
}

.cn .k-ui-namespace.com_docman .docman_sorting select,
.cn .k-ui-namespace.com_docman .k-pagination select {
    -webkit-appearance: none;
    appearance: none;
    width: auto;
    max-width: 100%;
    height: auto;
    min-height: 36px;
    margin: 0;
    padding: .35rem 2.1rem .35rem .75rem;
    font: inherit;
    font-size: 14px;
    line-height: 1.4;
    color: var(--cn-text);
    background: #fff var(--dm-select) no-repeat right .65rem center / 14px;
    border: 1px solid var(--cn-border-strong);
    border-radius: var(--cn-radius);
    box-shadow: none;
    cursor: pointer;
}

.cn .k-ui-namespace.com_docman .docman_sorting select:focus,
.cn .k-ui-namespace.com_docman .k-pagination select:focus {
    border-color: var(--cn-primary);
    outline: 0;
    box-shadow: var(--cn-ring);
}

/* ---------------------------------------------------------------------
 * 5. select2 (catégories, balises) — la liste déroulante est ajoutée au <body>
 * ------------------------------------------------------------------- */
.cn .select2-container--bootstrap .select2-selection {
    min-height: 42px;
    font-size: inherit;
    color: var(--cn-text);
    background-color: #fff;
    border: 1px solid var(--cn-border-strong);
    border-radius: var(--cn-radius);
    box-shadow: none;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.cn .select2-container--bootstrap.select2-container--focus .select2-selection,
.cn .select2-container--bootstrap.select2-container--open .select2-selection {
    border-color: var(--cn-primary);
    box-shadow: var(--cn-ring);
}

.cn .select2-container--bootstrap.select2-container--open.select2-container--below .select2-selection,
.cn .select2-container--bootstrap.select2-container--open.select2-container--above .select2-selection {
    border-color: var(--cn-primary);
    border-radius: var(--cn-radius);
}

.cn .select2-container--bootstrap .select2-selection--multiple .select2-selection__rendered {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    min-height: 0;
    padding: 5px 8px;
    white-space: normal;
}

.cn .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    float: none;
    margin: 0;
    padding: 1px 9px;
    font-size: .9em;
    font-weight: 600;
    line-height: 1.5;
    color: var(--cn-primary-dark);
    background: var(--cn-primary-soft);
    border: 1px solid var(--cn-primary-line);
    border-radius: 999px;
}

.cn .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice__remove {
    margin: 0;
    color: inherit;
    opacity: .65;
}

.cn .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice__remove:hover {
    color: inherit;
    opacity: 1;
}

.cn .select2-container--bootstrap .select2-selection--multiple .select2-search--inline {
    float: none;
    flex: 1 1 8em;
}

/* DOCman fixe ces hauteurs avec six classes : il en faut sept pour passer devant. */
.cn .k-ui-namespace .select2.select2-container.select2-container--bootstrap .select2-search--inline .select2-search__field {
    width: 100% !important;
    height: 30px;
    min-height: 0;
    margin: 0;
    padding: 0 4px;
    font: inherit;
    color: var(--cn-text);
}

.cn .k-ui-namespace .select2.select2-container.select2-container--bootstrap .select2-selection--single .select2-selection__arrow {
    height: 40px;
}

.cn .k-ui-namespace.com_docman .select2-container {
    margin-bottom: 0;
}

.cn .select2-container--bootstrap .select2-search__field::placeholder {
    color: #8a95a3;
    opacity: 1;
}

.cn .select2-container--bootstrap .select2-selection--single {
    height: 42px;
    padding: 9px 36px 9px 12px;
    line-height: 1.4;
}

.cn .select2-container--bootstrap .select2-selection--single .select2-selection__rendered {
    color: var(--cn-text);
}

.cn .select2-container--bootstrap .select2-selection--single .select2-selection__arrow b {
    border-top-color: var(--cn-muted);
}

.cn .select2-container--bootstrap .select2-dropdown {
    margin-top: 4px;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--cn-border-strong);
    border-radius: var(--cn-radius);
    box-shadow: var(--cn-shadow-lg);
}

.cn .select2-container--bootstrap .select2-dropdown--above {
    margin-top: -4px;
}

.cn .select2-container--bootstrap .select2-search--dropdown .select2-search__field {
    min-height: 36px;
    font-size: inherit;
    border: 1px solid var(--cn-border-strong);
    border-radius: 6px;
    box-shadow: none;
}

.cn .select2-container--bootstrap .select2-results__option {
    padding: 8px 12px;
}

.cn .select2-container--bootstrap .select2-results__option[aria-selected=true] {
    font-weight: 600;
    color: var(--cn-primary-dark);
    background-color: var(--cn-subtle);
}

.cn .select2-container--bootstrap .select2-results__option--highlighted[aria-selected] {
    color: var(--cn-primary-dark);
    background-color: var(--cn-primary-soft);
}

/* ---------------------------------------------------------------------
 * 6. Tableau des documents
 * ------------------------------------------------------------------- */
.cn .k-ui-namespace.com_docman .koowa_table--documents {
    margin: 0 0 16px;
    background: #fff;
    border: 1px solid var(--cn-border);
    border-collapse: separate;
    border-spacing: 0;
    border-radius: var(--dm-radius);
    box-shadow: var(--dm-card-shadow);
    overflow: hidden;
}

/* Catégorie sans document : pas de cadre vide */
.cn .k-ui-namespace.com_docman .koowa_table--documents:not(:has(> tbody > tr)) {
    border: 0;
    box-shadow: none;
}

.cn .k-ui-namespace.com_docman .koowa_table--documents > tbody > tr > td {
    padding: 11px 12px;
    vertical-align: middle;
    background-color: transparent;
    border-top: 0;
    border-bottom: 1px solid var(--cn-border);
    box-shadow: none;
}

.cn .k-ui-namespace.com_docman .koowa_table--documents > tbody > tr:last-child > td {
    border-bottom: 0;
}

@media (hover: hover) {
    .cn .k-ui-namespace.com_docman .koowa_table--documents > tbody > tr:hover > td {
        background-color: rgba(var(--cn-primary-rgb), .035);
    }
}

.cn .k-ui-namespace.com_docman .koowa_table--documents > tbody > tr.k-is-selected > td {
    background-color: var(--cn-primary-soft);
}

/* Cellule de sélection */
.cn .k-ui-namespace.com_docman .koowa_table--documents > tbody > tr > td:first-child:not(.k-table-data--toggle) {
    width: 1%;
    padding-right: 4px;
    padding-left: 16px;
}

.cn .k-ui-namespace.com_docman .koowa_table--documents td.k-table-data--toggle {
    padding: 0;
}

.cn .k-ui-namespace.com_docman .koowa_table--documents label {
    display: inline-flex;
    margin: 0;
}

.cn .k-ui-namespace.com_docman input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: var(--cn-primary);
    cursor: pointer;
}

/* Titre du document */
.cn .k-ui-namespace.com_docman .koowa_table--documents .koowa_header {
    display: block;
    line-height: 1.45;
}

.cn .k-ui-namespace.com_docman .koowa_table .koowa_header a {
    font-weight: 600;
    color: var(--cn-text);
    text-decoration: none;
}

.cn .k-ui-namespace.com_docman .koowa_table .koowa_header a:hover,
.cn .k-ui-namespace.com_docman .koowa_table .koowa_header a:focus-visible {
    color: var(--cn-link);
}

.cn .k-ui-namespace.com_docman .koowa_table .koowa_header a:hover > span:not(.koowa_header__item--image_container),
.cn .k-ui-namespace.com_docman .koowa_table .koowa_header a:focus-visible > span:not(.koowa_header__item--image_container) {
    text-decoration: underline;
}

.cn .k-ui-namespace.com_docman a .koowa_header__item--image_container {
    display: inline-block;
    margin-right: 8px;
    vertical-align: -2px;
}

.cn .k-ui-namespace.com_docman .koowa_table--documents .koowa_header__item--image_container [class*="k-icon-"] {
    font-size: 17px;
}

.cn .k-ui-namespace.com_docman .detail-label {
    margin-left: 2px;
    font-size: 13px;
    font-weight: 400;
    color: var(--cn-muted);
    white-space: nowrap;
}

/* Date */
.cn .k-ui-namespace.com_docman .koowa_table__dates {
    font-size: 14px;
    font-variant-numeric: tabular-nums;
    color: var(--cn-muted);
    text-align: right;
    white-space: nowrap;
}

/* Bouton de téléchargement : teinte douce dans les listes, plein au survol */
.cn .k-ui-namespace.com_docman .koowa_table__download {
    width: 1%;
    padding-right: 16px;
    white-space: nowrap;
}

.cn .k-ui-namespace.com_docman .docman_download__button::before {
    content: "";
    flex: none;
    width: 16px;
    height: 16px;
    background: currentColor;
    -webkit-mask: var(--dm-download) center / contain no-repeat;
    mask: var(--dm-download) center / contain no-repeat;
}

.cn .k-ui-namespace.com_docman .koowa_table .docman_download__button.btn-primary {
    --btn-color: var(--cn-primary-dark);
    --btn-bg: var(--cn-primary-soft);
    --btn-border-color: var(--cn-primary-line);
    --btn-hover-color: var(--cn-primary-fg);
    --btn-hover-bg: var(--cn-primary);
    --btn-hover-border-color: var(--cn-primary);

    gap: .4em;
    min-height: 34px;
    padding: 0 12px;
    font-size: 13.5px;
    color: var(--btn-color);
    background-color: var(--btn-bg);
    border-color: var(--btn-border-color);
}

.cn .k-ui-namespace.com_docman .koowa_table .docman_download__button.btn-primary:hover,
.cn .k-ui-namespace.com_docman .koowa_table .docman_download__button.btn-primary:focus-visible {
    color: var(--btn-hover-color);
    background-color: var(--btn-hover-bg);
    border-color: var(--btn-hover-border-color);
}

.cn .k-ui-namespace.com_docman .docman_download__info {
    font-weight: 500;
    opacity: .8;
}

.cn .k-ui-namespace.com_docman .koowa_table .docman_download__info {
    font-size: .92em;
}

/* Copier le lien : bouton fantôme */
.cn .k-ui-namespace.com_docman .k-js-docman-copy {
    min-width: 34px;
    min-height: 34px;
    padding: 0 8px;
    color: var(--cn-muted);
    background: transparent;
    border-color: transparent;
}

.cn .k-ui-namespace.com_docman .k-js-docman-copy:hover,
.cn .k-ui-namespace.com_docman .k-js-docman-copy:focus-visible {
    color: var(--cn-primary);
    background: var(--cn-subtle);
    border-color: var(--cn-border);
}

/* Modifier / Supprimer (utilisateurs autorisés) : suppression en contour, pleine au survol */
.cn .k-ui-namespace.com_docman .koowa_table__manage {
    width: 1%;
    padding-right: 16px;
    white-space: nowrap;
}

.cn .k-ui-namespace.com_docman .koowa_toolbar {
    margin: 0;
}

.cn .k-ui-namespace.com_docman .koowa_toolbar .btn {
    min-height: 34px;
    margin: 0 2px;
    padding: 0 10px;
    font-size: 13.5px;
}

.cn .k-ui-namespace.com_docman :is(.koowa_toolbar .btn-danger, .k-toolbar .k-button-delete) {
    --btn-color: var(--cn-danger-dark);
    --btn-bg: #fff;
    --btn-border-color: var(--cn-danger-line);
    --btn-hover-color: #fff;
    --btn-hover-bg: var(--cn-danger);
    --btn-hover-border-color: var(--cn-danger);
    --btn-active-color: #fff;
    --btn-active-bg: var(--cn-danger-dark);
    --btn-active-border-color: var(--cn-danger-dark);
    --btn-disabled-color: var(--cn-danger-dark);
    --btn-disabled-bg: #fff;
    --btn-disabled-border-color: var(--cn-danger-line);
}

.cn .k-ui-namespace.com_docman .k-toolbar .k-button-delete [class^="k-icon-"] {
    color: inherit;
}

/* Badges « Nouveau », « Populaire », statuts */
.cn .k-ui-namespace.com_docman .label,
.cn .k-ui-namespace.com_docman .badge {
    display: inline-block;
    margin-left: 4px;
    padding: .22em .62em;
    font-size: 11.5px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: .02em;
    vertical-align: 1px;
    border-radius: 999px;
    color: var(--cn-primary-dark) !important;
    background-color: var(--cn-primary-soft) !important;
    box-shadow: inset 0 0 0 1px var(--cn-primary-line);
}

.cn .k-ui-namespace.com_docman :is(.label-success, .badge.bg-success) {
    color: var(--cn-success-dark) !important;
    background-color: var(--cn-success-bg) !important;
    box-shadow: inset 0 0 0 1px var(--cn-success-line);
}

.cn .k-ui-namespace.com_docman :is(.label-important, .label-warning, .label-pending, .badge.bg-warning) {
    color: var(--cn-warning) !important;
    background-color: var(--cn-warning-bg) !important;
    box-shadow: inset 0 0 0 1px var(--cn-warning-line);
}

.cn .k-ui-namespace.com_docman :is(.label-draft, .badge.bg-danger) {
    color: var(--cn-danger-dark) !important;
    background-color: var(--cn-danger-bg) !important;
    box-shadow: inset 0 0 0 1px var(--cn-danger-line);
}

/* « Propriétaire » : information, pas un statut -> neutre */
.cn .k-ui-namespace.com_docman .label.badge.bg-primary {
    color: var(--cn-muted) !important;
    background-color: var(--cn-subtle) !important;
    box-shadow: inset 0 0 0 1px var(--cn-border);
}

.cn .k-ui-namespace.com_docman .label-expired {
    color: var(--cn-muted) !important;
    background-color: var(--cn-subtle) !important;
    box-shadow: inset 0 0 0 1px var(--cn-border);
}

/* Pagination */
.cn .k-ui-namespace.com_docman .k-pagination {
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 16px;
    margin: 0 0 16px;
}

.cn .k-ui-namespace.com_docman .k-pagination .k-pagination__pages {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.cn .k-ui-namespace.com_docman .k-pagination .k-pagination__pages > li {
    margin: 0;
}

.cn .k-ui-namespace.com_docman .k-pagination .k-pagination__pages > li > a,
.cn .k-ui-namespace.com_docman .k-pagination .k-pagination__pages > li > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    float: none;
    min-width: 36px;
    height: 36px;
    margin: 0;
    padding: 0 10px;
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    color: var(--cn-text);
    text-decoration: none;
    background: #fff;
    border: 1px solid var(--cn-border);
    border-radius: var(--cn-radius);
}

.cn .k-ui-namespace.com_docman .k-pagination .k-pagination__pages > li > a:hover,
.cn .k-ui-namespace.com_docman .k-pagination .k-pagination__pages > li > a:focus-visible {
    color: var(--cn-primary-dark);
    background: var(--cn-primary-soft);
    border-color: var(--cn-primary-line);
}

.cn .k-ui-namespace.com_docman .k-pagination .k-pagination__pages > .k-is-active > a,
.cn .k-ui-namespace.com_docman .k-pagination .k-pagination__pages > .k-is-active > span,
.cn .k-ui-namespace.com_docman .k-pagination .k-pagination__pages > .k-is-active > a:hover {
    color: var(--cn-primary-fg);
    background: var(--cn-primary);
    border-color: var(--cn-primary);
}

.cn .k-ui-namespace.com_docman .k-pagination .k-pagination__pages > .k-is-disabled > a,
.cn .k-ui-namespace.com_docman .k-pagination .k-pagination__pages > .k-is-disabled > span {
    color: var(--cn-muted);
    background: transparent;
    opacity: .6;
}

/* Téléphone : lignes dépliables (footable) */
.cn .k-ui-namespace.com_docman .footable.breakpoint > tbody > tr > td.k-table-data--toggle {
    width: 44px;
    padding: 0 0 0 12px;
    font-size: 0;
    line-height: 0;
}

.cn .k-ui-namespace.com_docman .footable.breakpoint .footable-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: var(--cn-primary-soft);
    border: 1px solid var(--cn-primary-line);
    border-radius: 50%;
    cursor: pointer;
}

.cn .k-ui-namespace.com_docman .footable.breakpoint .footable-toggle::after {
    content: "";
    width: 14px;
    height: 14px;
    margin: 0;
    background: var(--cn-primary);
    -webkit-mask: var(--dm-chev-down) center / contain no-repeat;
    mask: var(--dm-chev-down) center / contain no-repeat;
    transform: rotate(-90deg);
    transition: transform .2s var(--cn-ease);
}

.cn .k-ui-namespace.com_docman .footable.breakpoint tr.footable-detail-show .footable-toggle::after {
    transform: rotate(0deg);
}

.cn .k-ui-namespace.com_docman .footable.breakpoint .footable-row-detail > td {
    padding: 0 12px 12px 56px;
    background: var(--cn-subtle);
}

.cn .k-ui-namespace.com_docman .footable.breakpoint .footable-row-detail-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 10px;
    margin: 0;
}

.cn .k-ui-namespace.com_docman .footable.breakpoint .footable-row-detail-name,
.cn .k-ui-namespace.com_docman .footable.breakpoint .footable-row-detail-value {
    min-height: 0;
    padding: 6px 0;
}

.cn .k-ui-namespace.com_docman .footable.breakpoint .footable-row-detail-name {
    font-size: 13px;
    font-weight: 600;
    color: var(--cn-muted);
}

/* ---------------------------------------------------------------------
 * 7. Sous-catégories en cartes
 * ------------------------------------------------------------------- */

/* Carte commune aux deux mises en page :
 * - « Liste »   : div.docman_category--style > h4.koowa_header + p (actions) + .docman_description
 * - « Tableau » : tr > td (span.koowa_header) + td (actions) */
.cn .k-ui-namespace.com_docman .docman_categories .docman_category--style,
.cn .k-ui-namespace.com_docman .koowa_table--categories > tbody > tr {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-content: start;
    align-items: center;
    column-gap: 4px;
    margin: 0;
    padding: 0;
    background: #fff;
    border: 1px solid var(--cn-border);
    border-radius: var(--dm-radius);
    box-shadow: var(--dm-card-shadow);
    filter: none;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

@media (hover: hover) {
    .cn .k-ui-namespace.com_docman .docman_categories .docman_category--style:hover,
    .cn .k-ui-namespace.com_docman .koowa_table--categories > tbody > tr:hover {
        border-color: var(--cn-primary-line);
        box-shadow: var(--dm-card-hover);
        transform: translateY(-1px);
    }
}

.cn .k-ui-namespace.com_docman .docman_categories .docman_category--style:focus-within,
.cn .k-ui-namespace.com_docman .koowa_table--categories > tbody > tr:focus-within {
    border-color: var(--cn-primary-line);
}

/* Mise en page « Liste » */
.cn .k-ui-namespace.com_docman .docman_categories {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 12px;
    margin: .5rem 0 1.75rem;
    padding: 0;
    border: 0;
}

.cn .k-ui-namespace.com_docman .docman_categories::before,
.cn .k-ui-namespace.com_docman .docman_categories::after,
.cn .k-ui-namespace.com_docman .docman_categories .docman_category--style::before,
.cn .k-ui-namespace.com_docman .docman_categories .docman_category--style::after {
    content: none;
}

.cn .k-ui-namespace.com_docman .docman_categories .docman_category--style > * {
    grid-column: 1 / -1;
}

.cn .k-ui-namespace.com_docman .docman_categories .docman_category--style > .koowa_header {
    grid-column: 1;
    margin: 0;
    padding: 13px 8px 13px 15px;
    font-size: 1.02rem;
    font-weight: 650;
}

.cn .k-ui-namespace.com_docman .docman_categories .docman_category--style > .koowa_header + p {
    grid-column: 2;
    grid-row: 1;
    padding-right: 8px;
}

.cn .k-ui-namespace.com_docman .docman_categories .koowa_header__link {
    color: var(--cn-text);
    text-decoration: none;
}

.cn .k-ui-namespace.com_docman .docman_categories .docman_description {
    margin: -6px 0 0;
    padding: 0 16px 14px 67px;
    font-size: 14px;
    color: var(--cn-muted);
}

.cn .k-ui-namespace.com_docman .docman_categories .docman_description > :last-child {
    margin-bottom: 0;
}

.cn .k-ui-namespace.com_docman .docman_categories .docman_description a {
    position: relative;
    z-index: 1;
}

.cn .k-ui-namespace.com_docman .docman_categories .docman_category--style > .docman_thumbnail {
    max-width: none;
    margin: 0 16px 14px;
}

/* Mise en page « Tableau » : la table des sous-catégories devient une grille de cartes */
.cn .k-ui-namespace.com_docman .koowa_table--categories {
    display: block;
    margin: 0 0 1.75rem;
    border: 0;
    box-shadow: none;
}

.cn .k-ui-namespace.com_docman .koowa_table--categories > tbody {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
    gap: 10px;
}

.cn .k-ui-namespace.com_docman .koowa_table--categories > tbody > tr > td {
    display: block;
    padding: 0;
    background: none;
    border: 0;
    box-shadow: none;
}

.cn .k-ui-namespace.com_docman .koowa_table--categories > tbody > tr > td:first-child {
    padding: 11px 6px 11px 13px;
}

.cn .k-ui-namespace.com_docman .koowa_table--categories > tbody > tr > td + td {
    padding-right: 8px;
}

.cn .k-ui-namespace.com_docman .koowa_table--categories .koowa_header {
    gap: 10px;
    font-weight: 600;
}

.cn .k-ui-namespace.com_docman .koowa_table--categories a {
    color: var(--cn-text);
    text-decoration: none;
}

.cn .k-ui-namespace.com_docman .koowa_table--categories a.iconImage {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    font-size: 17px;
    background: var(--cn-primary-soft);
    border-radius: 9px;
}

/* Titres longs : césure plutôt que coupure arbitraire des mots (DOCman force break-word dans une colonne étroite) */
.cn .k-ui-namespace.com_docman :is(.docman_categories, .koowa_table--categories) .koowa_wrapped_content {
    -webkit-hyphens: auto;
    hyphens: auto;
}

/* Toute la carte est cliquable (lien du titre étiré sur la carte).
 * DOCman met .koowa_header en position relative : on la neutralise pour que le lien couvre la carte. */
.cn .k-ui-namespace.com_docman :is(.docman_categories, .koowa_table--categories) .koowa_header {
    position: static;
}

.cn .k-ui-namespace.com_docman .docman_categories .koowa_header__item:not(.koowa_header__item--image_container) .koowa_header__link::after,
.cn .k-ui-namespace.com_docman .koowa_table--categories .koowa_header__item:not(.koowa_header__item--image_container) a::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: inherit;
}

@media (hover: hover) {
    .cn .k-ui-namespace.com_docman .docman_categories .docman_category--style:hover .koowa_header__link,
    .cn .k-ui-namespace.com_docman .koowa_table--categories > tbody > tr:hover .koowa_header__item a {
        color: var(--cn-link);
    }
}

/* Actions des gestionnaires (Modifier / Supprimer) : icônes dans la carte.
 * Le libellé reste dans le lien (lu par les lecteurs d'écran), seule l'icône est visible. */
.cn .k-ui-namespace.com_docman :is(.docman_category--style > .koowa_header + p, .koowa_table--categories td + td, .koowa_table__manage .koowa_toolbar) {
    display: flex;
    flex-wrap: nowrap;
    gap: 2px;
    margin: 0;
}

.cn .k-ui-namespace.com_docman :is(.docman_category--style > .koowa_header + p, .koowa_table--categories td + td, .koowa_table__manage .koowa_toolbar) > a.btn {
    --btn-color: var(--cn-muted);
    --btn-bg: transparent;
    --btn-border-color: transparent;
    --btn-hover-color: var(--cn-primary);
    --btn-hover-bg: var(--cn-primary-soft);
    --btn-hover-border-color: var(--cn-primary-line);
    --btn-active-color: var(--cn-primary-dark);
    --btn-active-bg: var(--cn-primary-soft);
    --btn-active-border-color: var(--cn-primary-line);

    position: relative;
    z-index: 1;
    flex: none;
    width: 34px;
    min-width: 0;
    height: 34px;
    min-height: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
    font-size: 0;
    line-height: 0;
    color: var(--btn-color);
    background-color: var(--btn-bg);
    border-color: var(--btn-border-color);
    border-radius: 8px;
}

.cn .k-ui-namespace.com_docman :is(.docman_category--style > .koowa_header + p, .koowa_table--categories td + td, .koowa_table__manage .koowa_toolbar) > a.btn:hover,
.cn .k-ui-namespace.com_docman :is(.docman_category--style > .koowa_header + p, .koowa_table--categories td + td, .koowa_table__manage .koowa_toolbar) > a.btn:focus-visible {
    color: var(--btn-hover-color);
    background-color: var(--btn-hover-bg);
    border-color: var(--btn-hover-border-color);
}

.cn .k-ui-namespace.com_docman :is(.docman_category--style > .koowa_header + p, .koowa_table--categories td + td, .koowa_table__manage .koowa_toolbar) > a.btn-danger {
    --btn-hover-color: var(--cn-danger-dark);
    --btn-hover-bg: var(--cn-danger-bg);
    --btn-hover-border-color: var(--cn-danger-line);
    --btn-active-color: var(--cn-danger-dark);
    --btn-active-bg: var(--cn-danger-bg);
    --btn-active-border-color: var(--cn-danger-line);
}

.cn .k-ui-namespace.com_docman :is(.docman_category--style > .koowa_header + p, .koowa_table--categories td + td, .koowa_table__manage .koowa_toolbar) > a.btn::before,
.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style) > .koowa_header + p > a.btn::before {
    content: "";
    flex: none;
    width: 17px;
    height: 17px;
    background: currentColor;
    -webkit-mask: var(--dm-edit) center / contain no-repeat;
    mask: var(--dm-edit) center / contain no-repeat;
}

.cn .k-ui-namespace.com_docman :is(.docman_category--style > .koowa_header + p, .koowa_table--categories td + td, .koowa_table__manage .koowa_toolbar) > a.btn-danger::before {
    -webkit-mask-image: var(--dm-trash);
    mask-image: var(--dm-trash);
}

.cn .k-ui-namespace.com_docman .koowa_table__manage {
    padding-left: 4px;
}

/* Souris : actions masquées jusqu'au survol ou au focus clavier, pour laisser toute la largeur au titre.
 * Écran tactile : elles restent visibles en permanence (règles ci-dessus). */
@media (hover: hover) and (pointer: fine) {
    .cn .k-ui-namespace.com_docman .docman_categories .docman_category--style,
    .cn .k-ui-namespace.com_docman .koowa_table--categories > tbody > tr {
        grid-template-columns: minmax(0, 1fr);
    }

    .cn .k-ui-namespace.com_docman :is(.docman_category--style > .koowa_header + p, .koowa_table--categories td + td) {
        position: absolute;
        top: 11px;
        right: 8px;
        z-index: 2;
        grid-column: auto;
        grid-row: auto;
        padding: 0 0 0 22px;
        background: linear-gradient(90deg, rgba(255, 255, 255, 0), #fff 20px);
        border-radius: 0 8px 8px 0;
        opacity: 0;
        transition: opacity .15s ease;
    }

    .cn .k-ui-namespace.com_docman .docman_category--style > .koowa_header + p {
        top: 16px;
    }

    .cn .k-ui-namespace.com_docman :is(.docman_categories .docman_category--style, .koowa_table--categories > tbody > tr):is(:hover, :focus-within) :is(.koowa_header + p, td + td) {
        opacity: 1;
    }
}

/* Titre de la catégorie affichée : « Modifier » discret, à droite du titre */
.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style):has(> .koowa_header + p > a.btn) {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    column-gap: 14px;
}

.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style):has(> .koowa_header + p > a.btn)::before,
.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style):has(> .koowa_header + p > a.btn)::after {
    content: none;
}

/* Le reste (description, image) passe à la ligne : base 100 %, sans plafond de largeur. */
.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style):has(> .koowa_header + p > a.btn) > * {
    flex: 0 0 100%;
    max-width: none;
}

.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style):has(> .koowa_header + p > a.btn) > :is(.koowa_header, .koowa_header + p) {
    flex: 0 1 auto;
    min-width: 0;
}

/* DOCman met le titre dans un tableau à 100 % de large : on le rend à sa largeur de texte. */
.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style) > .koowa_header .koowa_wrapped_content {
    display: block;
    width: auto;
}

.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style) > .koowa_header + p {
    margin: 0 0 .5rem;
}

.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style) > .koowa_header + p > a.btn {
    --btn-color: var(--cn-muted);
    --btn-bg: transparent;
    --btn-border-color: var(--cn-border);
    --btn-hover-color: var(--cn-primary-dark);
    --btn-hover-bg: var(--cn-primary-soft);
    --btn-hover-border-color: var(--cn-primary-line);

    gap: 6px;
    min-height: 32px;
    padding: 0 10px;
    font-size: 13.5px;
    color: var(--btn-color);
    background-color: var(--btn-bg);
    border-color: var(--btn-border-color);
}

.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style) > .koowa_header + p > a.btn:hover,
.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style) > .koowa_header + p > a.btn:focus-visible {
    color: var(--btn-hover-color);
    background-color: var(--btn-hover-bg);
    border-color: var(--btn-hover-border-color);
}

.cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style) > .koowa_header + p > a.btn::before {
    width: 15px;
    height: 15px;
}

/* ---------------------------------------------------------------------
 * 8. Mise en page « Arborescence »
 * ------------------------------------------------------------------- */
.cn .k-ui-namespace.com_docman .docman_list_layout--tree {
    display: grid;
    grid-template-columns: minmax(200px, 270px) minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

.cn .k-ui-namespace.com_docman .docman_list_layout--tree::before,
.cn .k-ui-namespace.com_docman .docman_list_layout--tree::after {
    content: none;
}

.cn .k-ui-namespace.com_docman .docman_list__sidebar,
.cn .k-ui-namespace.com_docman .docman_list__content {
    float: none;
    width: auto;
    min-width: 0;
    margin: 0;
}

.cn .k-ui-namespace.com_docman .docman_list__sidebar {
    padding: 8px;
    background: var(--cn-side-bg);
    border: 1px solid var(--cn-side-border);
    border-radius: var(--dm-radius);
}

.cn .k-ui-namespace.com_docman .k-tree {
    margin: 0;
}

.cn .k-ui-namespace.com_docman .k-tree .jqtree-element,
.cn .k-ui-namespace.com_docman .k-tree > .jqtree-tree > .jqtree_common > .jqtree-element {
    padding: 0 10px 0 2px;
    border-radius: 8px;
    transition: background-color .12s ease;
}

.cn .k-ui-namespace.com_docman .jqtree-whitespace,
.cn .k-ui-namespace.com_docman .jqtree-toggler,
.cn .k-ui-namespace.com_docman .jqtree-icon,
.cn .k-ui-namespace.com_docman .jqtree-title {
    height: 34px;
    line-height: 34px;
}

.cn .k-ui-namespace.com_docman .jqtree-icon::before {
    line-height: 34px;
}

.cn .k-ui-namespace.com_docman .jqtree-element .jqtree-toggler {
    padding-top: 34px;
}

.cn .k-ui-namespace.com_docman .jqtree-title {
    font-size: 14.5px;
    color: var(--cn-side-fg);
}

.cn .k-ui-namespace.com_docman .jqtree-icon {
    font-size: 15px;
    color: var(--cn-primary);
}

.cn .k-ui-namespace.com_docman .k-tree .jqtree-element:hover,
.cn .k-ui-namespace.com_docman .k-tree .jqtree-element:focus {
    background: var(--cn-side-hover);
}

.cn .k-ui-namespace.com_docman .k-tree .jqtree-selected > .jqtree-element,
.cn .k-ui-namespace.com_docman .k-tree .jqtree-selected:hover > .jqtree-element {
    background: var(--cn-side-active-bg);
}

.cn .k-ui-namespace.com_docman .k-tree .jqtree-selected > .jqtree-element .jqtree-title,
.cn .k-ui-namespace.com_docman .k-tree .jqtree-selected > .jqtree-element .jqtree-icon {
    font-weight: 600;
    color: var(--cn-side-active-fg);
}

.cn .k-ui-namespace.com_docman .jqtree-toggler {
    color: var(--cn-side-muted);
}

.cn .k-ui-namespace.com_docman .jqtree-toggler::before,
.cn .k-ui-namespace.com_docman .jqtree-toggler:hover::before,
.cn .k-ui-namespace.com_docman .jqtree-toggler:focus::before {
    width: 12px;
    height: 12px;
    margin: -6px 0 0 -6px;
    border: 0;
    opacity: 1;
    background: currentColor;
    -webkit-mask: var(--dm-chev-down) center / contain no-repeat;
    mask: var(--dm-chev-down) center / contain no-repeat;
}

.cn .k-ui-namespace.com_docman .k-tree li li .jqtree-whitespace + .jqtree_common:not(.jqtree-toggler)::after {
    border-color: var(--cn-side-guide);
    opacity: 1;
}

@media (max-width: 767.98px) {
    .cn .k-ui-namespace.com_docman .docman_list_layout--tree {
        grid-template-columns: minmax(0, 1fr);
        gap: 16px;
    }
}

/* ---------------------------------------------------------------------
 * 9. Fiches document (page document, recherche, mise en page « Liste »)
 * ------------------------------------------------------------------- */
.cn .k-ui-namespace.com_docman .docman_document,
.cn .k-ui-namespace.com_docman .docman_document:first-child {
    margin-top: 0;
}

/* Page document : titre */
.cn .k-ui-namespace.com_docman .docman_document > h1.koowa_header {
    margin: 0 0 .4rem;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: -.01em;
}

.cn .k-ui-namespace.com_docman .koowa_header__title_link {
    color: inherit;
    text-decoration: none;
}

.cn .k-ui-namespace.com_docman h1.koowa_header .koowa_header__title_link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    vertical-align: middle;
}

.cn .k-ui-namespace.com_docman h1.koowa_header .koowa_header__title_link .koowa_header__item--image_container {
    margin: 0;
}

.cn .k-ui-namespace.com_docman h1.koowa_header .label,
.cn .k-ui-namespace.com_docman h1.koowa_header .badge {
    margin-left: 8px;
    font-size: 12px;
    vertical-align: middle;
}

/* Métadonnées : publié, modifié, auteur, catégorie, téléchargements */
.cn .k-ui-namespace.com_docman .docman_document_details {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0 0 18px;
    padding: 0 0 14px;
    font-size: 13.5px;
    line-height: 1.6;
    color: var(--cn-muted);
    border-bottom: 1px solid var(--cn-border);
}

.cn .k-ui-namespace.com_docman .docman_document_details > span::before {
    content: "·";
    padding: 0 8px;
    color: var(--cn-border-strong);
}

.cn .k-ui-namespace.com_docman .docman_document_details > span:first-child::before {
    content: "";
    padding: 0;
}

.cn .k-ui-namespace.com_docman .docman_document_details a {
    color: inherit;
}

/* Encadré de téléchargement */
.cn .k-ui-namespace.com_docman .docman_download {
    float: right;
    width: 280px;
    min-width: 0;
    max-width: 100%;
    margin: 0 0 16px 24px;
    padding: 16px;
    text-align: center;
    background: var(--cn-subtle);
    border: 1px solid var(--cn-border);
    border-radius: var(--dm-radius);
}

.cn .k-ui-namespace.com_docman .docman_download .docman_download__button {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    min-height: 48px;
    column-gap: .4em;
    row-gap: 0;
    padding: 8px 14px;
    font-size: 15.5px;
}

.cn .k-ui-namespace.com_docman .docman_download .docman_download__info {
    display: inline;
    font-size: .85em;
}

.cn .k-ui-namespace.com_docman .docman_download__filename {
    margin: 10px 0 0;
    padding: 0;
    font-size: 12.5px;
    line-height: 1.4;
    color: var(--cn-muted);
    word-break: break-all;
}

.cn .k-ui-namespace.com_docman .docman_description {
    overflow-wrap: break-word;
}

/* Recherche et mise en page « Liste » : une carte par document */
.cn .k-ui-namespace.com_docman .docman_list_layout .docman_document {
    margin: 0 0 12px;
    padding: 16px 18px;
    background: #fff;
    border: 1px solid var(--cn-border);
    border-radius: var(--dm-radius);
    box-shadow: var(--dm-card-shadow);
}

.cn .k-ui-namespace.com_docman .docman_list_layout .docman_document > .koowa_header {
    display: block;
    margin: 0 0 4px;
    font-size: 1.1rem;
    font-weight: 650;
}

.cn .k-ui-namespace.com_docman .docman_list_layout .docman_document .koowa_header__title_link:hover,
.cn .k-ui-namespace.com_docman .docman_list_layout .docman_document .koowa_header__title_link:focus-visible {
    color: var(--cn-link);
}

.cn .k-ui-namespace.com_docman .docman_list_layout .docman_document .koowa_header__title_link:hover > span:not(.koowa_header__item--image_container),
.cn .k-ui-namespace.com_docman .docman_list_layout .docman_document .koowa_header__title_link:focus-visible > span:not(.koowa_header__item--image_container) {
    text-decoration: underline;
}

.cn .k-ui-namespace.com_docman .docman_list_layout .docman_document .koowa_header__item--image_container .k-icon--size-medium {
    width: 32px;
    height: 32px;
    font-size: 16px;
    border-radius: 8px;
    vertical-align: middle;
}

.cn .k-ui-namespace.com_docman .docman_list_layout .docman_document .docman_document_details {
    margin-bottom: 12px;
    padding-bottom: 10px;
}

.cn .k-ui-namespace.com_docman .docman_list_layout .docman_download {
    width: 230px;
    margin: 0 0 8px 20px;
    padding: 0;
    background: none;
    border: 0;
}

.cn .k-ui-namespace.com_docman .docman_list_layout .docman_download .docman_download__button {
    min-height: 42px;
    font-size: 14.5px;
}

.cn .k-ui-namespace.com_docman .docman_list_layout .docman_description > :last-child,
.cn .k-ui-namespace.com_docman .docman_list_layout .docman_description > div > :last-child {
    margin-bottom: 0;
}

.cn .k-ui-namespace.com_docman mark {
    padding: 0 .12em;
    color: inherit;
    background: var(--highlight-bg, #fff3bf);
    border-radius: 3px;
}

@media (max-width: 575.98px) {
    .cn .k-ui-namespace.com_docman .docman_download,
    .cn .k-ui-namespace.com_docman .docman_list_layout .docman_download {
        float: none;
        width: auto;
        margin: 0 0 16px;
    }

    .cn .k-ui-namespace.com_docman .docman_document > h1.koowa_header {
        font-size: 1.35rem;
    }

    .cn .k-ui-namespace.com_docman .docman_document_details {
        flex-direction: column;
        align-items: flex-start;
    }

    .cn .k-ui-namespace.com_docman .docman_document_details > span::before {
        content: none;
    }

    .cn .k-ui-namespace.com_docman .docman_sorting {
        flex-wrap: nowrap;
    }

    .cn .k-ui-namespace.com_docman .k-toolbar {
        justify-content: flex-start;
    }

    .cn .k-ui-namespace.com_docman .docman_sorting label.control-label {
        flex: none;
    }

    .cn .k-ui-namespace.com_docman .docman_sorting select {
        flex: 0 1 auto;
        min-width: 0;
    }

    .cn .k-ui-namespace.com_docman .docman_category:not(.docman_category--style) > .koowa_header {
        font-size: 1.35rem;
    }
}

/* ---------------------------------------------------------------------
 * 10. Proposer un document
 * ------------------------------------------------------------------- */
.cn .k-ui-namespace.com_docman .docman_submit_layout {
    max-width: 760px;
}

.cn .k-ui-namespace.com_docman .docman_submit_layout .boxed,
.cn .k-ui-namespace.com_docman .docman_submit_layout fieldset {
    margin: 0;
    padding: 0;
    background: none;
    border: 0;
}

.cn .k-ui-namespace.com_docman .docman_submit_layout .control-group {
    max-width: none;
    margin: 0 0 18px;
}

.cn .k-ui-namespace.com_docman .docman_submit_layout .control-group > label,
.cn .k-ui-namespace.com_docman .docman_submit_layout .control-label {
    display: block;
    float: none;
    width: auto;
    margin: 0 0 6px;
    padding: 0;
    font-size: .95em;
    font-weight: 600;
    text-align: left;
    color: var(--cn-text);
}

.cn .k-ui-namespace.com_docman .docman_submit_layout .controls {
    margin-left: 0;
}

.cn .k-ui-namespace.com_docman .docman_submit_layout input[type="text"],
.cn .k-ui-namespace.com_docman .docman_submit_layout input[type="url"],
.cn .k-ui-namespace.com_docman .docman_submit_layout textarea {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    height: auto;
    min-height: 42px;
    margin: 0;
    padding: .55rem .8rem;
    font: inherit;
    line-height: 1.4;
    color: var(--cn-text);
    background: #fff;
    border: 1px solid var(--cn-border-strong);
    border-radius: var(--cn-radius);
    box-shadow: none;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.cn .k-ui-namespace.com_docman .docman_submit_layout input[type="text"]:focus,
.cn .k-ui-namespace.com_docman .docman_submit_layout input[type="url"]:focus,
.cn .k-ui-namespace.com_docman .docman_submit_layout textarea:focus {
    border-color: var(--cn-primary);
    outline: 0;
    box-shadow: var(--cn-ring);
}

.cn .k-ui-namespace.com_docman .docman_submit_layout input::placeholder {
    color: #8a95a3;
    opacity: 1;
}

.cn .k-ui-namespace.com_docman .docman_submit_layout .k-toolbar {
    justify-content: flex-start;
    margin: 4px 0 0;
    padding: 16px 0 0;
    border-top: 1px solid var(--cn-border);
}

/* Zone de dépôt (uploader Joomlatools) */
.cn .k-ui-namespace.com_docman .k-upload {
    box-sizing: border-box;
    min-height: 74px;
    margin: 0;
    color: var(--cn-muted);
    background: var(--cn-subtle);
    border: 1.5px dashed var(--cn-border-strong);
    border-radius: var(--dm-radius);
    transition: border-color .15s ease, background-color .15s ease;
}

.cn .k-ui-namespace.com_docman .k-upload:hover {
    border-color: var(--cn-primary-line);
}

.cn .k-ui-namespace.com_docman .k-upload.has-drag-hover {
    background: var(--cn-primary-soft);
    border-color: var(--cn-primary);
}

.cn .k-ui-namespace.com_docman .k-upload__content-wrapper,
.cn .k-ui-namespace.com_docman .has-drag-hover .k-upload__content-wrapper {
    min-height: 71px;
    background: transparent;
    border: 0;
    border-radius: inherit;
    box-shadow: none;
}

.cn .k-ui-namespace.com_docman .k-upload__body-default {
    min-height: 71px;
    max-height: 71px;
}

.cn .k-ui-namespace.com_docman .has-error .k-upload__body-default {
    margin-top: -71px;
}

.cn .k-ui-namespace.com_docman .k-upload__buttons {
    padding-left: 16px;
}

.cn .k-ui-namespace.com_docman .k-upload__button {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 14px;
    font-family: inherit;
    font-size: 14px;
    font-weight: 600;
    color: var(--cn-text);
    background: #fff;
    border: 1px solid var(--cn-border-strong);
    border-radius: var(--cn-radius);
    transition: color .15s ease, background-color .15s ease, border-color .15s ease;
}

.cn .k-ui-namespace.com_docman .k-upload__button:hover,
.cn .k-ui-namespace.com_docman .k-upload__button:focus-visible {
    color: var(--cn-primary-dark);
    background: #fff;
    border-color: var(--cn-primary);
}

.cn .k-ui-namespace.com_docman .k-upload__button--upload {
    color: var(--cn-primary-fg);
    background: var(--cn-primary);
    border-color: var(--cn-primary);
}

.cn .k-ui-namespace.com_docman .k-upload__button--upload:hover,
.cn .k-ui-namespace.com_docman .k-upload__button--upload:focus-visible {
    color: var(--cn-primary-fg);
    background: var(--cn-primary-dark);
    border-color: var(--cn-primary-dark);
}

.cn .k-ui-namespace.com_docman .k-upload__divider {
    padding-left: 12px;
    font-size: 18px;
    color: var(--cn-border-strong);
}

.cn .k-ui-namespace.com_docman .k-upload__drop-message,
.cn .k-ui-namespace.com_docman .k-upload.has-file .k-upload__files {
    font-size: 15px;
    color: var(--cn-muted);
}

.cn .k-ui-namespace.com_docman .k-upload__info__content {
    background: #fff;
    border-top: 1px solid var(--cn-border);
}

.cn .k-ui-namespace.com_docman .k-upload__progress .bar {
    background-color: var(--cn-primary);
}

@media (max-width: 575.98px) {
    .cn .k-ui-namespace.com_docman .k-upload__divider {
        display: none;
    }
}
