/* =============================================================
   Thème "Harness" — variante dense, monochrome, professionnelle.
   Activation : <html data-density="harness">.
   Bascule depuis Préférences.
   ============================================================= */

:root[data-density='harness'] {
  /* Palette neutre : un seul accent */
  --navy: #1f2433;
  --blue: #3a4156;
  --muted: #6b7385;
  --orange: #4b8bff;
  --line: #e2e5ec;
  --green: #2c8a5b;
  --purple: #6c63b5;
  --surface: #f5f6f8;
  --rail: 48px;
  --dossier: 180px;
  --right: 300px;
  --record-field-value-size: 12px;
  color: var(--navy);
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
  font-size: 13px;
  line-height: 1.45;
}

/* Anti-arrondi général */
:root[data-density='harness'] * {
  border-radius: 3px !important;
}

/* Body et topbar : plus sobres, plus bas */
:root[data-density='harness'] body {
  background: #f5f6f8;
}
:root[data-density='harness'] .topbar {
  height: 42px;
  background: #ffffff;
  border-bottom: 1px solid #d8dde6;
  padding: 0 14px;
  gap: 14px;
  font-size: 12px;
}
:root[data-density='harness'] .brand {
  min-width: 0;
  gap: 6px;
}
:root[data-density='harness'] .brand > svg {
  width: 22px;
  height: 24px;
}
:root[data-density='harness'] .brand strong {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
  font-family: inherit;
}

/* Recherche globale : discrète */
:root[data-density='harness'] .global-search {
  background: #f0f2f6;
  color: #6b7385;
  height: 28px;
  padding: 4px 10px;
  border: 1px solid transparent;
}
:root[data-density='harness'] .global-search kbd {
  background: #ffffff;
  border: 1px solid #d8dde6;
  color: #6b7385;
  font-size: 11px;
}

/* Boutons de la topbar */
:root[data-density='harness'] .top-actions {
  gap: 6px;
}
:root[data-density='harness'] .top-actions .icon-btn {
  color: #6b7385;
  padding: 4px 6px;
  min-width: 24px;
  height: 24px;
}
:root[data-density='harness'] .top-actions .icon-btn:hover {
  color: #1f2433;
  background: #eef0f4;
}
:root[data-density='harness'] .company,
:root[data-density='harness'] .profile {
  height: 28px;
  padding: 3px 8px;
  color: #1f2433;
  background: transparent;
}
:root[data-density='harness'] .notification:after {
  border: none;
}

/* Sidebar modules : étroite, sans couleur */
:root[data-density='harness'] .modules {
  background: #ffffff;
  border-right: 1px solid #e2e5ec;
  padding: 8px 0 10px;
  gap: 2px;
}
:root[data-density='harness'] .modules > a,
:root[data-density='harness'] .modules > button {
  width: 32px;
  height: 32px;
  color: #6b7385;
}
:root[data-density='harness'] .modules > a.active {
  background: transparent;
  color: #4b8bff;
  border-radius: 3px;
}
:root[data-density='harness'] .modules > a.active svg,
:root[data-density='harness'] .modules > a.active .icon {
  color: #4b8bff;
  fill: currentColor;
}
:root[data-density='harness'] .modules-expanded {
  --rail: 150px;
}
:root[data-density='harness'] .module-group > button {
  width: 32px;
  height: 32px;
  background: transparent;
  color: #6b7385;
}
:root[data-density='harness'] .module-group > button.active {
  background: transparent;
  color: #4b8bff;
}
:root[data-density='harness'] .module-group.open > button {
  background: #eef0f4;
}
:root[data-density='harness'] .module-chevron {
  display: none;
}
:root[data-density='harness'] .module-submenu {
  background: #ffffff;
  border: 1px solid #d8dde6;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
  padding: 4px 0;
  min-width: 200px;
}
:root[data-density='harness'] .module-submenu strong {
  display: none;
}
:root[data-density='harness'] .module-submenu a {
  padding: 6px 12px;
  font-size: 12px;
  color: #1f2433;
  border-left: 2px solid transparent;
}
:root[data-density='harness'] .module-submenu a.active {
  background: #f0f2f6;
  border-left-color: #4b8bff;
  color: #1f2433;
  font-weight: 500;
}

/* Dossier sidebar : dossier monochrome */
:root[data-density='harness'] .dossier {
  background: #fafbfc;
  border-right: 1px solid #e2e5ec;
  padding: 8px 4px 10px;
}
:root[data-density='harness'] .dossier > h2 {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #6b7385;
  font-weight: 500;
  padding: 0 4px 6px;
}
:root[data-density='harness'] .dossier > h2 .dossier-project-title {
  color: #1f2433;
  font-size: 12px;
  text-transform: none;
  letter-spacing: 0;
  font-weight: 500;
}
:root[data-density='harness'] .dossier-project-icon {
  color: #6b7385;
}
:root[data-density='harness'] .dossier nav {
  gap: 0;
}
:root[data-density='harness'] .dossier nav > a {
  min-height: 32px;
  padding: 4px 8px;
  border-left: 2px solid transparent;
  color: #1f2433;
}
:root[data-density='harness'] .dossier nav > a.active {
  background: #ffffff;
  border-left-color: #4b8bff;
  color: #1f2433;
}
:root[data-density='harness'] .dossier nav > a b {
  font-size: 12px;
  font-weight: 500;
}
:root[data-density='harness'] .dossier nav > a small {
  color: #6b7385;
  font-size: 11px;
  font-weight: 400;
}
:root[data-density='harness'] .doc-icon {
  width: 20px;
  height: 20px;
}
:root[data-density='harness'] .dossier-link-icon {
  width: 14px;
  height: 14px;
  color: #6b7385;
}

/* Cartes : plates, bordures fines */
:root[data-density='harness'] .card,
:root[data-density='harness'] .settings-hub,
:root[data-density='harness'] fieldset,
:root[data-density='harness'] .theme-fieldset,
:root[data-density='harness'] .modal-card,
:root[data-density='harness'] .menu-list .btn,
:root[data-density='harness'] .data-table,
:root[data-density='harness'] .record-card,
:root[data-density='harness'] .preferences-form,
:root[data-density='harness'] input,
:root[data-density='harness'] select,
:root[data-density='harness'] textarea {
  background: #ffffff;
  border: 1px solid #e2e5ec;
  box-shadow: none;
}

/* Boutons : neutres */
:root[data-density='harness'] .btn,
:root[data-density='harness'] button.btn,
:root[data-density='harness'] .quick {
  background: #ffffff;
  border: 1px solid #d8dde6;
  color: #1f2433;
  font-size: 12px;
  padding: 5px 10px;
}
:root[data-density='harness'] .btn:hover,
:root[data-density='harness'] .quick:hover {
  background: #f0f2f6;
  border-color: #c8ccd6;
}
:root[data-density='harness'] .btn.primary,
:root[data-density='harness'] .quick.primary {
  background: #1f2433;
  border-color: #1f2433;
  color: #ffffff;
}
:root[data-density='harness'] .btn.primary:hover,
:root[data-density='harness'] .quick.primary:hover {
  background: #2c3142;
  border-color: #2c3142;
}

/* Tables : pas de couleur dans les en-têtes */
:root[data-density='harness'] .data-table th {
  background: #fafbfc;
  font-weight: 500;
  font-size: 11px;
  color: #6b7385;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 6px 10px;
  border-bottom: 1px solid #d8dde6;
}
:root[data-density='harness'] .data-table td {
  font-size: 12px;
  padding: 6px 10px;
  border-bottom: 1px solid #f0f2f6;
}

/* Pills de statut : pastel discret */
:root[data-density='harness'] .status-pill {
  background: #f0f2f6;
  color: #1f2433;
  font-size: 11px;
  font-weight: 500;
  padding: 1px 6px;
}
:root[data-density='harness'] .status-pill.tone-success {
  background: #e6f4ec;
  color: #2c6e4a;
}
:root[data-density='harness'] .status-pill.tone-warn {
  background: #fcf3e0;
  color: #8c5e1c;
}
:root[data-density='harness'] .status-pill.tone-danger {
  background: #fbe7e7;
  color: #8e2e2e;
}
:root[data-density='harness'] .status-pill.tone-info {
  background: #e7eef9;
  color: #2c4e8e;
}

/* Inputs : uniformes */
:root[data-density='harness'] input,
:root[data-density='harness'] select,
:root[data-density='harness'] textarea {
  font-size: 12px;
  padding: 5px 8px;
  color: #1f2433;
}
:root[data-density='harness'] input:focus,
:root[data-density='harness'] select:focus,
:root[data-density='harness'] textarea:focus {
  outline: 1px solid #4b8bff;
  outline-offset: -1px;
}

/* Icônes : plus fines */
:root[data-density='harness'] .icon,
:root[data-density='harness'] svg.icon {
  stroke-width: 1.4;
}

/* Density boost pour les listes et menus */
:root[data-density='harness'] .menu-list {
  gap: 4px;
}
:root[data-density='harness'] .menu-list .btn {
  padding: 4px 10px;
  font-size: 12px;
}

/* === Overrides fuit de blanc en mode Harness (clair ET sombre) === */
:root[data-density='harness'] .card,
:root[data-density='harness'] .record-card,
:root[data-density='harness'] .dossier,
:root[data-density='harness'] .dossier nav > a,
:root[data-density='harness'] .modules,
:root[data-density='harness'] .global-search,
:root[data-density='harness'] .data-table,
:root[data-density='harness'] .data-table th,
:root[data-density='harness'] .data-table td,
:root[data-density='harness'] .filters,
:root[data-density='harness'] .search-field,
:root[data-density='harness'] .right-panel,
:root[data-density='harness'] .right-tabs,
:root[data-density='harness'] .topbar,
:root[data-density='harness'] .brand,
:root[data-density='harness'] .quick,
:root[data-density='harness'] .btn,
:root[data-density='harness'] .btn.table-sort,
:root[data-density='harness'] .btn.quick,
:root[data-density='harness'] .btn.soft,
:root[data-density='harness'] .btn.square,
:root[data-density='harness'] .modal-card,
:root[data-density='harness'] .modal-card *,
:root[data-density='harness'] .menu-list .btn,
:root[data-density='harness'] .theme-fieldset,
:root[data-density='harness'] .settings-hub,
:root[data-density='harness'] .preferences-form,
:root[data-density='harness'] .row-actions .btn,
:root[data-density='harness'] .heading,
:root[data-density='harness'] .crumbs,
:root[data-density='harness'] .record-header,
:root[data-density='harness'] .record-card,
:root[data-density='harness'] .field-group,
:root[data-density='harness'] .context-help {
  background-color: var(--surface) !important;
  background-image: none !important;
}

/* Boutons spécifiques qui doivent rester blancs (cards) */
:root[data-density='harness'][data-theme='light'] .card,
:root[data-density='harness'][data-theme='light'] .record-card,
:root[data-density='harness'][data-theme='light'] .modal-card {
  background-color: #ffffff !important;
}

/* En mode sombre Harness, on assombrit davantage */
:root[data-density='harness'][data-theme='dark'] .card,
:root[data-density='harness'][data-theme='dark'] .record-card,
:root[data-density='harness'][data-theme='dark'] .dossier,
:root[data-density='harness'][data-theme='dark'] .dossier nav > a,
:root[data-density='harness'][data-theme='dark'] .modules,
:root[data-density='harness'][data-theme='dark'] .global-search,
:root[data-density='harness'][data-theme='dark'] .data-table,
:root[data-density='harness'][data-theme='dark'] .data-table th,
:root[data-density='harness'][data-theme='dark'] .data-table td,
:root[data-density='harness'][data-theme='dark'] .filters,
:root[data-density='harness'][data-theme='dark'] .search-field,
:root[data-density='harness'][data-theme='dark'] .right-panel,
:root[data-density='harness'][data-theme='dark'] .right-tabs,
:root[data-density='harness'][data-theme='dark'] .topbar,
:root[data-density='harness'][data-theme='dark'] .brand,
:root[data-density='harness'][data-theme='dark'] .quick,
:root[data-density='harness'][data-theme='dark'] .btn,
:root[data-density='harness'][data-theme='dark'] .btn.table-sort,
:root[data-density='harness'][data-theme='dark'] .btn.quick,
:root[data-density='harness'][data-theme='dark'] .btn.soft,
:root[data-density='harness'][data-theme='dark'] .btn.square,
:root[data-density='harness'][data-theme='dark'] .modal-card,
:root[data-density='harness'][data-theme='dark'] .menu-list .btn,
:root[data-density='harness'][data-theme='dark'] .theme-fieldset,
:root[data-density='harness'][data-theme='dark'] .settings-hub,
:root[data-density='harness'][data-theme='dark'] .preferences-form,
:root[data-density='harness'][data-theme='dark'] .heading,
:root[data-density='harness'][data-theme='dark'] .crumbs,
:root[data-density='harness'][data-theme='dark'] .record-header,
:root[data-density='harness'][data-theme='dark'] .field-group,
:root[data-density='harness'][data-theme='dark'] .context-help {
  background-color: #141a2e !important;
  background-image: none !important;
  border-color: #1c2238 !important;
}

/* Liens qui apparaissent en bleu semi-transparent : plus lisibles */
:root[data-density='harness'][data-theme='dark'] a,
:root[data-density='harness'][data-theme='dark'] .heading a,
:root[data-density='harness'][data-theme='dark'] .heading b,
:root[data-density='harness'][data-theme='dark'] .heading small,
:root[data-density='harness'][data-theme='dark'] .heading h1,
:root[data-density='harness'][data-theme='dark'] .heading h2 {
  color: #d8dde6 !important;
}

/* Bouton primary en sombre mode Harness */
:root[data-density='harness'][data-theme='dark'] .btn.primary,
:root[data-density='harness'][data-theme='dark'] .quick.primary {
  background-color: #4b8bff !important;
  border-color: #4b8bff !important;
  color: #ffffff !important;
}

/* Card icon (avatar) dans les headings */
:root[data-density='harness'][data-theme='dark'] .heading .icon,
:root[data-density='harness'][data-theme='dark'] .heading svg {
  color: #6f9bff;
  fill: currentColor;
}

/* =============================================================
   OVERRIDES MODE DARK GLOBAUX
   S'appliquent à data-theme="dark" (Soonply ou Harness).
   Corrige les fuites de blanc dans toute l'app.
   ============================================================= */
:root[data-theme='dark'] body {
  background: #0f1322;
  color: #e7ecf7;
}
:root[data-theme='dark'] .topbar {
  background: #141a2e;
  border-bottom-color: #1c2238;
}
:root[data-theme='dark'] .topbar .brand,
:root[data-theme='dark'] .global-search {
  background: #141a2e;
  color: #d8dde6;
}
:root[data-theme='dark'] .topbar .global-search {
  background: #141a2e;
  border: 1px solid #1c2238;
}
:root[data-theme='dark'] .global-search kbd {
  background: #1c2238;
  border-color: #2c3454;
  color: #8a92a3;
}
:root[data-theme='dark'] .modules {
  background: #141a2e;
  border-right-color: #1c2238;
}
:root[data-theme='dark'] .modules > a,
:root[data-theme='dark'] .modules > button {
  background: #141a2e;
  color: #8a92a3;
}
:root[data-theme='dark'] .modules > a.active,
:root[data-theme='dark'] .module-group.open > button {
  background: #1c2848;
  color: #ff7a5a;
}
:root[data-theme='dark'] .module-submenu {
  background: #141a2e;
  border-color: #1c2238;
}
:root[data-theme='dark'] .dossier {
  background: #141a2e;
  border-right-color: #1c2238;
}
:root[data-theme='dark'] .dossier nav > a {
  color: #d8dde6;
}
:root[data-theme='dark'] .dossier nav > a.active,
:root[data-theme='dark'] .dossier nav > a:hover {
  background: #1c2238;
  color: #ff7a5a;
}
:root[data-theme='dark'] main {
  background: #0f1322;
  color: #e7ecf7;
}
:root[data-theme='dark'] .page-heading,
:root[data-theme='dark'] .collection-head,
:root[data-theme='dark'] .collection-toolbar,
:root[data-theme='dark'] .filters,
:root[data-theme='dark'] .search-field {
  background: #141a2e !important;
  color: #d8dde6 !important;
  border-color: #1c2238 !important;
}
:root[data-theme='dark'] .data-table {
  background: #141a2e !important;
}
:root[data-theme='dark'] .data-table th {
  background: #1c2238 !important;
  color: #8a92a3 !important;
  border-color: #2c3454 !important;
}
:root[data-theme='dark'] .data-table td {
  background: #141a2e !important;
  color: #d8dde6 !important;
  border-color: #1c2238 !important;
}
:root[data-theme='dark'] .data-table tr:hover td {
  background: #1c2238 !important;
}
:root[data-theme='dark'] .right-panel {
  background: #141a2e !important;
  border-left-color: #1c2238 !important;
}
:root[data-theme='dark'] .right-tabs {
  background: #141a2e !important;
  border-bottom-color: #1c2238 !important;
}
:root[data-theme='dark'] .right-tabs > button {
  background: #141a2e !important;
  color: #8a92a3 !important;
}
:root[data-theme='dark'] .right-tabs > button[aria-selected='true'] {
  color: #ff7a5a !important;
  border-bottom-color: #ff7a5a !important;
}
:root[data-theme='dark'] .right-panel .menu-list .btn {
  background: #1c2238 !important;
  color: #d8dde6 !important;
  border-color: #2c3454 !important;
}
:root[data-theme='dark'] .right-panel .menu-list .btn:hover {
  background: #2c3454 !important;
}
:root[data-theme='dark'] .right-panel .menu-list .btn.primary {
  background: #ff4e28 !important;
  border-color: #ff4e28 !important;
  color: #ffffff !important;
}
:root[data-theme='dark'] .heading {
  background: transparent !important;
  color: #d8dde6 !important;
}
:root[data-theme='dark'] .heading h1,
:root[data-theme='dark'] .heading p {
  color: #d8dde6 !important;
}
:root[data-theme='dark'] .pagination,
:root[data-theme='dark'] .pagination select {
  background: transparent !important;
  color: #d8dde6 !important;
}
:root[data-theme='dark'] .page-number {
  background: #1c2848 !important;
  color: #ff7a5a !important;
}
:root[data-theme='dark'] .btn,
:root[data-theme='dark'] .quick {
  background: #1c2238 !important;
  color: #d8dde6 !important;
  border-color: #2c3454 !important;
}
:root[data-theme='dark'] .btn:hover,
:root[data-theme='dark'] .quick:hover {
  background: #2c3454 !important;
}
:root[data-theme='dark'] .btn.primary,
:root[data-theme='dark'] .quick.primary {
  background: #ff4e28 !important;
  border-color: #ff4e28 !important;
  color: #ffffff !important;
}
:root[data-theme='dark'] input,
:root[data-theme='dark'] select,
:root[data-theme='dark'] textarea {
  background: #1c2238 !important;
  color: #d8dde6 !important;
  border-color: #2c3454 !important;
}
:root[data-theme='dark'] kbd {
  background: #1c2238 !important;
  color: #8a92a3 !important;
  border-color: #2c3454 !important;
}
:root[data-theme='dark'] .panel-toggle {
  background: #1c2238 !important;
  color: #d8dde6 !important;
}
:root[data-theme='dark'] .right-panel h2,
:root[data-theme='dark'] .right-panel h3,
:root[data-theme='dark'] .right-panel h4 {
  color: #d8dde6 !important;
}
/* Texte visible dans headings (corrige le bleu transparent) */
:root[data-theme='dark'] .page-heading h1,
:root[data-theme='dark'] .page-heading p {
  color: #d8dde6 !important;
}
:root[data-theme='dark'] a {
  color: #d8dde6;
}
:root[data-theme='dark'] a:hover {
  color: #ff7a5a;
}
/* Liens dans les headings et tableaux */
:root[data-theme='dark'] .heading a,
:root[data-theme='dark'] .data-table a {
  color: #ff7a5a;
}

/* === Fuites de blanc restantes en mode sombre Harness === */
:root[data-density='harness'][data-theme='dark'] .page-heading,
:root[data-density='harness'][data-theme='dark'] .page-heading > div,
:root[data-density='harness'][data-theme='dark'] .collection-head,
:root[data-density='harness'][data-theme='dark'] .collection-toolbar,
:root[data-density='harness'][data-theme='dark'] .right-tabs,
:root[data-density='harness'][data-theme='dark'] .right-tabs > button,
:root[data-density='harness'][data-theme='dark'] .right-panel,
:root[data-density='harness'][data-theme='dark'] .right-panel .quick,
:root[data-density='harness'][data-theme='dark'] .right-panel .menu-list .btn,
:root[data-density='harness'][data-theme='dark'] .right-panel .actions-card,
:root[data-density='harness'][data-theme='dark'] main,
:root[data-density='harness'][data-theme='dark'] main > section,
:root[data-density='harness'][data-theme='dark'] .pagination,
:root[data-density='harness'][data-theme='dark'] .pagination select,
:root[data-density='harness'][data-theme='dark'] .collection-pagination,
:root[data-density='harness'][data-theme='dark'] .collection-pagination select,
:root[data-density='harness'][data-theme='dark'] .panel-toggle,
:root[data-density='harness'][data-theme='dark'] .panel-toggle:hover,
:root[data-density='harness'][data-theme='dark'] kbd,
:root[data-density='harness'][data-theme='dark'] .page-number {
  background-color: #141a2e !important;
  background-image: none !important;
  border-color: #1c2238 !important;
  color: #d8dde6 !important;
}

/* En mode Harness dark, les onglets inactifs doivent être visibles */
:root[data-density='harness'][data-theme='dark'] .right-tabs > button:not([aria-selected='true']) {
  color: #8a92a3 !important;
}

/* Titre de page : couleur claire */
:root[data-density='harness'][data-theme='dark'] .page-heading h1,
:root[data-density='harness'][data-theme='dark'] .page-heading p {
  color: #d8dde6 !important;
}

/* Page number actif en mode sombre : pastille bleu */
:root[data-density='harness'][data-theme='dark'] .page-number {
  background-color: #1c2848 !important;
  color: #6f9bff !important;
}

/* Boutons d'actions du panneau droit : visibles */
:root[data-density='harness'][data-theme='dark'] .right-panel a,
:root[data-density='harness'][data-theme='dark'] .right-panel .btn,
:root[data-density='harness'][data-theme='dark'] .right-panel .menu-list .btn,
:root[data-density='harness'][data-theme='dark'] .right-panel .menu-list .btn > * {
  color: #d8dde6 !important;
}
:root[data-density='harness'][data-theme='dark'] .right-panel .menu-list .btn:hover {
  background-color: #1c2238 !important;
}
:root[data-density='harness'][data-theme='dark'] .right-panel .menu-list .btn.primary {
  background-color: #4b8bff !important;
  color: #ffffff !important;
  border-color: #4b8bff !important;
}
:root[data-density='harness'][data-theme='dark'] .right-panel .menu-list .btn.primary:hover {
  background-color: #6a9fff !important;
}

/* Liste d'actions rapides : couleur des icônes */
:root[data-density='harness'][data-theme='dark'] .right-panel .menu-list .btn .icon,
:root[data-density='harness'][data-theme='dark'] .right-panel .menu-list .btn svg {
  color: #6f9bff;
}

/* Le `<main>` lui-même ne doit pas être blanc */
:root[data-density='harness'][data-theme='dark'] main {
  background-color: #0e1320 !important;
  color: #d8dde6 !important;
}

/* Titres de section "Statistiques" etc. */
:root[data-density='harness'][data-theme='dark'] .right-panel h3,
:root[data-density='harness'][data-theme='dark'] .right-panel h2,
:root[data-density='harness'][data-theme='dark'] .right-panel h4 {
  color: #d8dde6 !important;
}

/* Sélecteur agressif : tout élément avec background blanc forcé en sombre */
:root[data-density='harness'][data-theme='dark'] [style*="background-color: rgb(255, 255, 255)"],
:root[data-density='harness'][data-theme='dark'] [style*="background-color: #fff"],
:root[data-density='harness'][data-theme='dark'] [style*="background: rgb(255, 255, 255)"],
:root[data-density='harness'][data-theme='dark'] [style*="background: #fff"] {
  background-color: #141a2e !important;
}

/* Right panel : compact */
:root[data-density='harness'] .right-panel {
  border-left: 1px solid #e2e5ec;
  background: #fafbfc;
}
:root[data-density='harness'] .right-tabs {
  background: #ffffff;
  border-bottom: 1px solid #e2e5ec;
  font-size: 11px;
}

/* Buttons / link accents : bleu doux uniquement */
:root[data-density='harness'] a {
  color: #1f2433;
}
:root[data-density='harness'] a:hover {
  color: #4b8bff;
}
:root[data-density='harness'] .accent,
:root[data-density='harness'] .active a,
:root[data-density='harness'] .current-row a {
  color: #4b8bff;
}

/* Headers de section / crumbs */
:root[data-density='harness'] h1,
:root[data-density='harness'] h2,
:root[data-density='harness'] h3 {
  font-weight: 500;
  letter-spacing: -0.01em;
}
:root[data-density='harness'] h1 {
  font-size: 18px;
}
:root[data-density='harness'] h2 {
  font-size: 14px;
}
:root[data-density='harness'] h3 {
  font-size: 12px;
  color: #1f2433;
}

/* Descriptions, kbd, labels : neutres */
:root[data-density='harness'] .field-help,
:root[data-density='harness'] small,
:root[data-density='harness'] .help-demo {
  color: #6b7385;
  font-size: 11px;
}

/* Records fields : valeurs plus petites */
:root[data-density='harness'] .record-field-value {
  font-size: 12px;
}

/* Mode Harness + Dark : si l'utilisateur combine */
:root[data-theme='dark'][data-density='harness'] {
  --navy: #d8dde6;
  --blue: #6b7385;
  --muted: #8a92a3;
  --orange: #6f9bff;
  --line: #1c2238;
  --green: #5cba8b;
  --purple: #8a83c5;
  --surface: #0e1320;
  color: #d8dde6;
  background: #0e1320;
}
:root[data-theme='dark'][data-density='harness'] body {
  background: #0e1320;
}
:root[data-theme='dark'][data-density='harness'] .topbar,
:root[data-theme='dark'][data-density='harness'] .modules,
:root[data-theme='dark'][data-density='harness'] .dossier,
:root[data-theme='dark'][data-density='harness'] .right-panel,
:root[data-theme='harness'][data-theme='dark'] .card,
:root[data-theme='dark'][data-density='harness'] .card,
:root[data-theme='dark'][data-density='harness'] .data-table,
:root[data-theme='dark'][data-density='harness'] .modal-card,
:root[data-theme='dark'][data-density='harness'] fieldset,
:root[data-theme='dark'][data-density='harness'] input,
:root[data-theme='dark'][data-density='harness'] select,
:root[data-theme='dark'][data-density='harness'] textarea,
:root[data-theme='dark'][data-density='harness'] .preferences-form,
:root[data-theme='dark'][data-density='harness'] .module-submenu,
:root[data-theme='dark'][data-density='harness'] .theme-fieldset,
:root[data-theme='dark'][data-density='harness'] .menu-list .btn {
  background: #141a2e;
  border-color: #1c2238;
  color: #d8dde6;
}
:root[data-theme='dark'][data-density='harness'] .status-pill.tone-success {
  background: #163327;
  color: #6cf3c0;
}
:root[data-theme='dark'][data-density='harness'] .status-pill.tone-warn {
  background: #3a2a13;
  color: #ffc87a;
}
:root[data-theme='dark'][data-density='harness'] .status-pill.tone-danger {
  background: #3b1818;
  color: #ff8d8d;
}
:root[data-theme='dark'][data-density='harness'] .status-pill.tone-info {
  background: #14243f;
  color: #8fb1ff;
}