/* CHDR theme v2 - direction B (resident) + densite C (admin). Charge apres mobile.css. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Noto+Sans+Arabic:wght@400;500;600&display=swap');

:root {
  --chdr-primary: #1D7FBF; --chdr-primary-600: #166A9F; --chdr-primary-50: #EAF4FB;
  --chdr-accent: #C9793B; --chdr-accent-50: #FFF7ED;
  --chdr-gray-50: #FAFAF9; --chdr-gray-100: #F5F5F4; --chdr-gray-200: #E7E5E4; --chdr-gray-300: #D6D3D1;
  --chdr-gray-500: #78716C; --chdr-gray-700: #44403C; --chdr-gray-900: #1C1917;
  --chdr-success: #15803D; --chdr-success-50: #DCFCE7;
  --chdr-warning: #B45309; --chdr-warning-50: #FEF3C7;
  --chdr-danger: #B91C1C; --chdr-danger-50: #FEE2E2;
  --chdr-radius-sm: 8px; --chdr-radius-md: 12px;
  --chdr-shadow-sm: 0 1px 2px rgb(0 0 0 / .05);
  --chdr-shadow-lg: 0 10px 30px rgb(0 0 0 / .12);
  --chdr-font: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --chdr-font-ar: 'Noto Sans Arabic', 'Inter', system-ui, sans-serif;
}
.dark {
  --chdr-primary-50: #0F2A3D; --chdr-accent-50: #2A1A0D;
  --chdr-gray-50: #1C1917; --chdr-gray-100: #292524; --chdr-gray-200: #3A3532; --chdr-gray-300: #4A4441;
  --chdr-gray-500: #A8A29E; --chdr-gray-700: #D6D3D1; --chdr-gray-900: #FAFAF9;
  --chdr-success-50: #0B2E1A; --chdr-warning-50: #3A2405; --chdr-danger-50: #3A0F0F;
}

/* Typographie */
html, body { font-family: var(--chdr-font); }
[dir="rtl"] body, body:lang(ar), [lang="ar"] { font-family: var(--chdr-font-ar); }
.fi-header-heading { font-weight: 600; letter-spacing: -0.01em; }
.fi-fo-field-wrp-label, .fi-fo-field-label { font-weight: 500; }

/* Cartes : bordure 1px, pas d'ombre */
.fi-section, .fi-ta-ctn, .fi-wi-stats-overview-stat, .fi-fo-tabs, .fi-simple-main {
  box-shadow: none; border: 1px solid var(--chdr-gray-200); border-radius: var(--chdr-radius-md);
}
.fi-section-header-heading { font-weight: 600; }

/* Boutons */
.fi-btn { border-radius: var(--chdr-radius-sm); font-weight: 500; }
.fi-btn.fi-btn-color-primary, .fi-btn.fi-color-primary {
  background-color: var(--chdr-primary); color: #ffffff; border-color: var(--chdr-primary);
}
.fi-btn.fi-btn-color-primary:hover, .fi-btn.fi-color-primary:hover { background-color: var(--chdr-primary-600); }
.fi-btn.fi-btn-color-primary .fi-btn-label, .fi-btn.fi-color-primary .fi-btn-label,
.fi-btn.fi-btn-color-primary .fi-icon, .fi-btn.fi-color-primary .fi-icon { color: #ffffff; }
.fi-btn:focus-visible { outline: 2px solid var(--chdr-primary); outline-offset: 2px; }

/* Badges */
.fi-badge { border-radius: 999px; font-weight: 500; }

/* Tables */
.fi-ta-header-cell { background-color: var(--chdr-gray-50); }
.fi-ta-header-cell-label { font-weight: 500; font-size: 0.75rem; color: var(--chdr-gray-500); letter-spacing: 0.02em; }
.fi-ta-row:hover { background-color: var(--chdr-gray-50); }
.fi-ta-cell { border-color: var(--chdr-gray-200); }

/* Etats vides */
.fi-ta-empty-state-icon-ctn { background-color: var(--chdr-gray-100); box-shadow: none; }
.fi-ta-empty-state-heading { font-weight: 500; }

/* Champs */
.fi-input-wrp, .fi-select-input, .fi-textarea { border-radius: var(--chdr-radius-sm); box-shadow: none; }
.fi-input-wrp:focus-within { outline: 2px solid var(--chdr-primary); outline-offset: -1px; }

/* Sidebar / topbar */
.fi-sidebar { border-right: 1px solid var(--chdr-gray-200); }
.fi-sidebar-item-btn { border-radius: var(--chdr-radius-sm); }
.fi-sidebar-item-active .fi-sidebar-item-btn, .fi-sidebar-item.fi-active .fi-sidebar-item-btn { background-color: var(--chdr-primary-50); }
.fi-sidebar-item-active .fi-sidebar-item-label, .fi-sidebar-item.fi-active .fi-sidebar-item-label { color: var(--chdr-primary-600); font-weight: 500; }
.fi-sidebar-group-label { font-size: 0.6875rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--chdr-gray-500); }
.fi-topbar { box-shadow: none; border-bottom: 1px solid var(--chdr-gray-200); border-radius: 0; }

/* Modales, dropdowns : seules surfaces flottantes avec ombre */
.fi-modal-window { border-radius: 16px; box-shadow: var(--chdr-shadow-lg); }
.fi-dropdown-panel { border-radius: var(--chdr-radius-md); box-shadow: var(--chdr-shadow-lg); border: 1px solid var(--chdr-gray-200); }
.fi-no { box-shadow: var(--chdr-shadow-lg); border-radius: var(--chdr-radius-md); }

/* Densite admin (compacte) */
body.chdr-admin .fi-btn { padding-top: 0.375rem; padding-bottom: 0.375rem; }
body.chdr-admin .fi-ta-row td, body.chdr-admin .fi-ta-cell { padding-top: 0.5rem; padding-bottom: 0.5rem; }
body.chdr-admin .fi-ta-text, body.chdr-admin .fi-ta-text-item, body.chdr-admin .fi-ta-cell { font-size: 0.8125rem; }
body.chdr-admin .fi-ta-header-cell { padding-top: 0.5rem; padding-bottom: 0.5rem; }

/* v2 : widgets stats sans cadre externe, logo lisible en dark */
.fi-section:has(.fi-wi-stats-overview-stat), .fi-wi-stats-overview, .fi-wi-stats-overview-stats-ctn {
  border: 0; box-shadow: none; background: transparent; border-radius: 0;
}
.fi-wi-stats-overview-stat { background-color: #ffffff; }
.dark .fi-wi-stats-overview-stat { background-color: var(--chdr-gray-100); }
.fi-logo { border-radius: 8px; }
.dark .fi-logo { background: #ffffff; padding: 4px 6px; }

/* v3 : densite admin sur les vrais wrappers Filament v5, logo plus bas */
body.chdr-admin .fi-ta-col, body.fi-panel-admin .fi-ta-col,
body.chdr-admin .fi-ta-cell-content, body.fi-panel-admin .fi-ta-cell-content,
body.chdr-admin .fi-ta-text, body.fi-panel-admin .fi-ta-text,
body.chdr-admin .fi-ta-badge, body.fi-panel-admin .fi-ta-badge,
body.chdr-admin .fi-ta-icon, body.fi-panel-admin .fi-ta-icon,
body.chdr-admin .fi-ta-selection-cell, body.fi-panel-admin .fi-ta-selection-cell,
body.chdr-admin .fi-ta-actions, body.fi-panel-admin .fi-ta-actions {
  padding-top: 0.5rem; padding-bottom: 0.5rem;
}
body.chdr-admin .fi-ta-cell, body.fi-panel-admin .fi-ta-cell { padding-top: 0; padding-bottom: 0; font-size: 0.8125rem; }
body.chdr-admin .fi-ta-header-cell, body.fi-panel-admin .fi-ta-header-cell { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.fi-logo { max-height: 3rem; width: auto; }
.dark .fi-logo { padding: 3px 5px; }

/* v4 : un seul niveau de padding vertical dans les cellules admin */
body.chdr-admin .fi-ta-row td.fi-ta-cell, body.fi-panel-admin .fi-ta-row td.fi-ta-cell { padding-top: 0; padding-bottom: 0; }
body.chdr-admin .fi-ta-row .fi-ta-col, body.fi-panel-admin .fi-ta-row .fi-ta-col { padding-top: 0.25rem; padding-bottom: 0.25rem; }
body.chdr-admin .fi-ta-row .fi-ta-text, body.fi-panel-admin .fi-ta-row .fi-ta-text,
body.chdr-admin .fi-ta-row .fi-ta-badge, body.fi-panel-admin .fi-ta-row .fi-ta-badge,
body.chdr-admin .fi-ta-row .fi-ta-icon, body.fi-panel-admin .fi-ta-row .fi-ta-icon { padding-top: 0.5rem; padding-bottom: 0.5rem; }
body.chdr-admin .fi-ta-row td.fi-ta-selection-cell, body.fi-panel-admin .fi-ta-row td.fi-ta-selection-cell { padding-top: 0.75rem; padding-bottom: 0.75rem; }

/* v6 : grille cotisations resident scopee par classe body */
@media (min-width: 768px) {
  body.chdr-page-cotisations .fi-ta-record-content-ctn { display: grid; grid-template-columns: minmax(0, 1fr) 190px; align-items: center; }
  body.chdr-page-cotisations .fi-ta-split { display: grid; grid-template-columns: minmax(0, 1fr) 190px 200px 100px 120px; align-items: center; column-gap: 1rem; }
  body.chdr-page-cotisations .fi-ta-split > * { min-width: 0; }
}

/* v7 : grilles desktop vehicules et reclamations (resident) */
@media (min-width: 768px) {
  body.chdr-page-vehicules .fi-ta-record-content-ctn, body.chdr-page-reclamations .fi-ta-record-content-ctn { display: grid; grid-template-columns: minmax(0, 1fr) 150px; align-items: center; }
  body.chdr-page-vehicules .fi-ta-split { display: grid; grid-template-columns: 52px minmax(0, 1fr) 130px 160px 130px 48px 64px; align-items: center; column-gap: 0.75rem; }
  body.chdr-page-reclamations .fi-ta-split { display: grid; grid-template-columns: minmax(0, 1fr) 150px 150px 100px 130px 70px; align-items: center; column-gap: 0.75rem; }
  body.chdr-page-vehicules .fi-ta-split > *, body.chdr-page-reclamations .fi-ta-split > * { min-width: 0; }
}

/* v8 : cartes phone en CSS pour Vehicules et Reclamations (desktop = table intacte) */
@media (max-width: 767px) {
  body.chdr-page-vehicules .fi-ta-table, body.chdr-page-reclamations .fi-ta-table { display: block; min-width: 0; width: 100%; }
  body.chdr-page-vehicules .fi-ta-table thead, body.chdr-page-reclamations .fi-ta-table thead { display: none; }
  body.chdr-page-vehicules .fi-ta-table tbody, body.chdr-page-reclamations .fi-ta-table tbody { display: block; }
  body.chdr-page-vehicules .fi-ta-row, body.chdr-page-reclamations .fi-ta-row { display: grid; padding: 12px 16px; row-gap: 4px; column-gap: 12px; border-bottom: 1px solid var(--chdr-gray-200); align-items: center; }
  body.chdr-page-vehicules .fi-ta-row > td, body.chdr-page-reclamations .fi-ta-row > td { display: block; padding: 0; min-width: 0; }
  body.chdr-page-vehicules .fi-ta-row > td .fi-ta-col, body.chdr-page-reclamations .fi-ta-row > td .fi-ta-col,
  body.chdr-page-vehicules .fi-ta-row > td .fi-ta-text, body.chdr-page-reclamations .fi-ta-row > td .fi-ta-text { padding: 0; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-selection-cell, body.chdr-page-reclamations .fi-ta-row > td.fi-ta-selection-cell { display: none; }

  body.chdr-page-vehicules .fi-ta-row { grid-template-columns: 52px minmax(0, 1fr) auto; grid-template-areas: "photo plate validity" "photo name validity" "type type elec" "owner owner active" "actions actions actions"; }
  body.chdr-page-vehicules .fi-ta-cell-photo-path { grid-area: photo; }
  body.chdr-page-vehicules .fi-ta-cell-license-plate { grid-area: plate; }
  body.chdr-page-vehicules .fi-ta-cell-display-name { grid-area: name; font-size: 13px; }
  body.chdr-page-vehicules .fi-ta-cell-validity-status { grid-area: validity; justify-self: end; }
  body.chdr-page-vehicules .fi-ta-cell-vehicle-type { grid-area: type; margin-top: 4px; }
  body.chdr-page-vehicules .fi-ta-cell-is-electric { grid-area: elec; justify-self: end; }
  body.chdr-page-vehicules .fi-ta-cell-owner-name { grid-area: owner; font-size: 13px; color: var(--chdr-gray-500); }
  body.chdr-page-vehicules .fi-ta-cell-is-active { grid-area: active; justify-self: end; }
  body.chdr-page-vehicules .fi-ta-row > td:last-child:not([class*="fi-ta-cell-"]) { grid-area: actions; margin-top: 6px; }

  body.chdr-page-reclamations .fi-ta-row { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "title status" "badges badges" "meta meta" "actions actions"; }
  body.chdr-page-reclamations .fi-ta-cell-title { grid-area: title; font-weight: 600; }
  body.chdr-page-reclamations .fi-ta-cell-status { grid-area: status; justify-self: end; }
  body.chdr-page-reclamations .fi-ta-cell-source, body.chdr-page-reclamations .fi-ta-cell-category, body.chdr-page-reclamations .fi-ta-cell-priority { grid-area: badges; display: inline-block; margin-right: 6px; margin-top: 4px; }
  body.chdr-page-reclamations .fi-ta-cell-ticket-number, body.chdr-page-reclamations .fi-ta-cell-created-at, body.chdr-page-reclamations .fi-ta-cell-concerns-count, body.chdr-page-reclamations .fi-ta-cell-comments-count { grid-area: meta; display: inline-block; margin-right: 10px; font-size: 12.5px; color: var(--chdr-gray-500); }
  body.chdr-page-reclamations .fi-ta-cell-ticket-number .fi-ta-text-item { font-weight: 400; color: var(--chdr-gray-500); }
  body.chdr-page-reclamations .fi-ta-row > td:last-child:not([class*="fi-ta-cell-"]) { grid-area: actions; margin-top: 6px; }
}

/* v9 : libelles des cellules sur les cartes phone */
@media (max-width: 767px) {
  body.chdr-page-vehicules .fi-ta-cell-vehicle-type, body.chdr-page-vehicules .fi-ta-cell-owner-name,
  body.chdr-page-vehicules .fi-ta-cell-validity-status, body.chdr-page-vehicules .fi-ta-cell-is-electric,
  body.chdr-page-vehicules .fi-ta-cell-is-active { display: flex; align-items: center; gap: 8px; }
  body.chdr-page-vehicules .fi-ta-cell-vehicle-type::before, body.chdr-page-vehicules .fi-ta-cell-owner-name::before,
  body.chdr-page-vehicules .fi-ta-cell-validity-status::before, body.chdr-page-vehicules .fi-ta-cell-is-electric::before,
  body.chdr-page-vehicules .fi-ta-cell-is-active::before { font-size: 12px; color: var(--chdr-gray-500); white-space: nowrap; }
  body.chdr-page-vehicules .fi-ta-cell-vehicle-type::before { content: "Type"; }
  body.chdr-page-vehicules .fi-ta-cell-owner-name::before { content: "Propriétaire"; }
  body.chdr-page-vehicules .fi-ta-cell-validity-status::before { content: "Validité"; }
  body.chdr-page-vehicules .fi-ta-cell-is-electric::before { content: "Électrique"; }
  body.chdr-page-vehicules .fi-ta-cell-is-active::before { content: "Actif"; }
  body.chdr-page-vehicules .fi-ta-cell-owner-name { color: var(--chdr-gray-900); }
  body.chdr-page-vehicules .fi-ta-row { grid-template-areas: "photo plate validity" "photo name validity" "type type type" "owner owner elec" "active active active" "actions actions actions"; row-gap: 6px; }
  body.chdr-page-vehicules .fi-ta-cell-validity-status { justify-self: end; flex-direction: column; align-items: flex-end; gap: 2px; }
  body.chdr-page-vehicules .fi-ta-cell-is-active { justify-content: space-between; border-top: 1px solid var(--chdr-gray-200); padding-top: 8px; margin-top: 2px; }

  body.chdr-page-reclamations .fi-ta-cell-created-at::before { content: "Créée le "; }
  body.chdr-page-reclamations .fi-ta-cell-concerns-count::after { content: " concerné(s)"; }
  body.chdr-page-reclamations .fi-ta-cell-comments-count::after { content: " message(s)"; }
  body.chdr-page-reclamations .fi-ta-cell-concerns-count, body.chdr-page-reclamations .fi-ta-cell-comments-count { display: inline-flex; align-items: center; gap: 4px; }
}

/* v10 : carte vehicule phone = en-tete + lignes libelle/valeur (prioritaire sur v8/v9) */
@media (max-width: 767px) {
  body.chdr-page-vehicules .fi-ta-row { grid-template-columns: 52px minmax(0, 1fr) auto; grid-template-areas: "photo plate validity" "photo name validity" "type type type" "owner owner owner" "elec elec elec" "active active active" "actions actions actions"; row-gap: 0; column-gap: 12px; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-photo-path { grid-area: photo; align-self: start; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-license-plate { grid-area: plate; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-display-name { grid-area: name; font-size: 13px; padding-bottom: 8px; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-validity-status { grid-area: validity; display: block; justify-self: end; align-self: start; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-validity-status::before { content: none; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-vehicle-type, body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-owner-name,
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-is-electric, body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-is-active {
    display: flex; align-items: center; justify-content: space-between; gap: 12px; justify-self: stretch; width: 100%;
    padding: 8px 0; border-top: 1px solid var(--chdr-gray-200); margin: 0; min-height: 36px;
  }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-vehicle-type { grid-area: type; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-owner-name { grid-area: owner; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-is-electric { grid-area: elec; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-is-active { grid-area: active; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-vehicle-type::before, body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-owner-name::before,
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-is-electric::before, body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-is-active::before {
    font-size: 13px; color: var(--chdr-gray-500); flex: 0 0 auto;
  }
  body.chdr-page-vehicules .fi-ta-row > td:last-child:not([class*="fi-ta-cell-"]) { grid-area: actions; border-top: 1px solid var(--chdr-gray-200); padding-top: 10px; margin-top: 0; }
  body.chdr-page-vehicules .fi-ta-row > td:last-child:not([class*="fi-ta-cell-"]) .fi-ta-actions { justify-content: flex-end; }
}

/* v11 : carte vehicule phone compacte (remplace v10) */
@media (max-width: 767px) {
  body.chdr-page-vehicules .fi-ta-row { grid-template-columns: 52px auto minmax(0, 1fr) auto; grid-template-areas: "photo plate plate validity" "photo name name name" "photo type elec elec" "owner owner owner owner" "active active actions actions"; row-gap: 4px; column-gap: 10px; padding: 14px 16px; }
  body.chdr-page-vehicules .fi-ta-row > td { border: 0; padding: 0; min-height: 0; margin: 0; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-photo-path { grid-area: photo; align-self: start; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-license-plate { grid-area: plate; display: block; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-display-name { grid-area: name; display: block; font-size: 13px; padding: 0; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-validity-status { grid-area: validity; display: block; justify-self: end; align-self: start; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-vehicle-type { grid-area: type; display: block; justify-self: start; padding: 2px 0 0; border: 0; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-is-electric { grid-area: elec; display: block; justify-self: start; align-self: center; padding: 2px 0 0; border: 0; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-vehicle-type::before, body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-is-electric::before { content: none; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-owner-name { grid-area: owner; display: flex; justify-content: flex-start; gap: 6px; font-size: 13px; color: var(--chdr-gray-500); padding: 6px 0 0; border: 0; min-height: 0; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-owner-name::before { content: "Propriétaire ·"; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-is-active { grid-area: active; display: flex; justify-content: flex-start; align-items: center; gap: 10px; padding: 8px 0 0; border: 0; min-height: 0; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-is-active::before { content: "Actif"; }
  body.chdr-page-vehicules .fi-ta-row > td.fi-ta-cell-is-active > * { width: auto; }
  body.chdr-page-vehicules .fi-ta-row > td:last-child:not([class*="fi-ta-cell-"]) { grid-area: actions; justify-self: end; align-self: center; border: 0; padding: 8px 0 0; margin: 0; }
  body.chdr-page-vehicules .fi-ta-row > td .fi-ta-col, body.chdr-page-vehicules .fi-ta-row > td .fi-ta-text, body.chdr-page-vehicules .fi-ta-row > td .fi-ta-icon, body.chdr-page-vehicules .fi-ta-row > td .fi-ta-toggle { padding: 0; width: auto; }
}

/* v12 : carte reclamation phone, une zone par cellule (remplace v8/v9) */
@media (max-width: 767px) {
  body.chdr-page-reclamations .fi-ta-row { grid-template-columns: auto auto auto minmax(0, 1fr); grid-template-areas: "title title title status" "source category priority priority" "ticket created created created" "concerns comments comments comments" "actions actions actions actions"; row-gap: 6px; column-gap: 8px; padding: 14px 16px; }
  body.chdr-page-reclamations .fi-ta-row > td { display: block; margin: 0; padding: 0; justify-self: start; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-title { grid-area: title; font-weight: 600; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-status { grid-area: status; justify-self: end; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-source { grid-area: source; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-category { grid-area: category; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-priority { grid-area: priority; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-ticket-number { grid-area: ticket; font-size: 12.5px; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-ticket-number .fi-ta-text-item { font-weight: 400; color: var(--chdr-gray-500); }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-created-at { grid-area: created; font-size: 12.5px; color: var(--chdr-gray-500); display: flex; gap: 4px; align-items: center; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-created-at::before { content: "· Créée le"; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-concerns-count { grid-area: concerns; display: inline-flex; align-items: center; gap: 4px; font-size: 12.5px; color: var(--chdr-gray-500); }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-comments-count { grid-area: comments; display: inline-flex; align-items: center; gap: 4px; font-size: 12.5px; color: var(--chdr-gray-500); }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-concerns-count::after { content: "concerné(s)"; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-comments-count::after { content: "message(s)"; }
  body.chdr-page-reclamations .fi-ta-row > td:last-child:not([class*="fi-ta-cell-"]) { grid-area: actions; justify-self: end; margin-top: 2px; }
  body.chdr-page-reclamations .fi-ta-row > td .fi-ta-col, body.chdr-page-reclamations .fi-ta-row > td .fi-ta-text { padding: 0; }
}

/* v13 : badges reclamation colles (n° et date ne dictent plus la largeur des colonnes) */
@media (max-width: 767px) {
  body.chdr-page-reclamations .fi-ta-row { grid-template-columns: auto auto auto minmax(0, 1fr); grid-template-areas: "title title title status" "source category priority priority" "meta meta meta meta" "counts counts counts counts" "actions actions actions actions"; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-ticket-number { grid-area: meta; grid-column: 1 / 3; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-created-at { grid-area: meta; grid-column: 3 / 5; justify-self: start; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-concerns-count { grid-area: counts; grid-column: 1 / 3; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-comments-count { grid-area: counts; grid-column: 3 / 5; }
  body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-source, body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-category, body.chdr-page-reclamations .fi-ta-row > td.fi-ta-cell-priority { white-space: nowrap; }
}

/* CHDR: admin pleine largeur sur grands ecrans (17/10) */
body.chdr-admin .fi-main,
body.chdr-admin .fi-main.fi-width-7xl {
  max-width: none;
}
