/* Espace ARC (administrateur ARC hors cabinet) : tableau de bord, base de données, activité */
.arc-dash { display: grid; gap: 20px; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); align-items: start; margin-top: 20px; }
@media (max-width: 1000px) { .arc-dash { grid-template-columns: minmax(0, 1fr); } }
.arc-dash > .card { min-width: 0; }
.arc-cabs { margin-top: 20px; }
.arc-kpis { grid-template-columns: repeat(6, minmax(0, 1fr)); }
@media (max-width: 1250px) { .arc-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 620px) { .arc-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.arc-alerts.cols { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
.arc-side { display: grid; gap: 20px; min-width: 0; }
.arc-kpis .kpi-value small { font-size: 13px; font-weight: 500; color: var(--fg-3); letter-spacing: 0; margin-left: 4px; }

/* Cabinets */
.arc-cab-head { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 12px; }
.arc-cab-head .card-title { margin: 0; }
.arc-cab-head .grow { flex: 1; }
.arc-cab-head input[type="search"] { height: 34px; width: min(240px, 100%); }
.arc-cab th[data-sort] { cursor: pointer; user-select: none; white-space: nowrap; }
.arc-cab th[data-sort]::after { content: ''; display: inline-block; width: 0; margin-left: 4px; }
.arc-cab th.sorted-asc::after { content: '↑'; width: auto; color: var(--accent); }
.arc-cab th.sorted-desc::after { content: '↓'; width: auto; color: var(--accent); }
.arc-cab td, .arc-cab th { padding-top: 7px; padding-bottom: 7px; }
.arc-cab .cab-open { display: inline-flex; flex-direction: column; align-items: flex-start; gap: 1px; padding: 0; border: 0; background: none; font: inherit; color: var(--accent-ink); text-align: left; cursor: pointer; }
.arc-cab .cab-open strong { font-weight: 600; }
.arc-cab .cab-open:hover strong { text-decoration: underline; }
.arc-cab .cab-open span { font-size: 12px; color: var(--fg-3); }
.arc-cab .sub { display: block; font-size: 11.5px; color: var(--fg-3); }
.arc-cab .num { font-variant-numeric: tabular-nums; }
.arc-cab tr.is-off td { opacity: .55; }

.conf { display: flex; align-items: center; gap: 8px; min-width: 110px; }
.conf-track { flex: 1; height: 7px; border-radius: 6px; background: var(--surface-3); border: 1px solid var(--line-2); overflow: hidden; }
.conf-track i { display: block; height: 100%; border-radius: 6px; background: var(--fg-4); }
.conf-pct { font: 500 12px var(--mono); color: var(--fg-3); min-width: 34px; text-align: right; }
.conf-ok .conf-track i { background: var(--ok); } .conf-ok .conf-pct { color: var(--ok); }
.conf-warn .conf-track i { background: var(--gold); } .conf-warn .conf-pct { color: var(--gold); }
.conf-low .conf-track i { background: var(--danger); } .conf-low .conf-pct { color: var(--danger); }

/* Points de vigilance */
.arc-alerts { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.arc-alerts li { display: grid; grid-template-columns: 10px minmax(0, 1fr); gap: 10px; align-items: start; padding: 9px 10px; border-radius: var(--r); background: var(--surface-2); }
.arc-alerts li > i { width: 8px; height: 8px; border-radius: 50%; margin-top: 6px; background: var(--fg-4); }
.arc-alerts li.danger > i { background: var(--danger); } .arc-alerts li.warn > i { background: var(--gold); } .arc-alerts li.info > i { background: var(--accent-2); }
.arc-alerts strong { display: block; font-size: 13px; font-weight: 600; }
.arc-alerts span { display: block; font-size: 12.5px; color: var(--fg-3); overflow-wrap: anywhere; }
.arc-alerts a { color: inherit; text-decoration: none; display: block; } .arc-alerts a:hover strong { text-decoration: underline; }
.arc-allgood { display: flex; align-items: center; gap: 8px; color: var(--ok); font-size: 13.5px; }

.arc-recent { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.arc-recent li { display: flex; align-items: baseline; gap: 8px; padding: 6px 0; border-bottom: 1px solid var(--line); font-size: 13px; }
.arc-recent li:last-child { border-bottom: 0; }
.arc-recent .who { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.arc-recent .who span { color: var(--fg-3); }
.arc-recent time { font: 500 12px var(--mono); color: var(--fg-3); white-space: nowrap; }

/* Base de données */
.arc-base-form { display: grid; gap: 12px; }
.arc-base-grid { display: grid; gap: 10px 14px; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); align-items: end; }
.arc-base-grid .field { margin: 0; }
.arc-base-grid .field.wide { grid-column: span 2; }
@media (max-width: 560px) { .arc-base-grid .field.wide { grid-column: auto; } }
.arc-base-grid select[multiple] { min-height: 96px; }
.arc-base-actions { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.arc-base-actions .grow { flex: 1; }
.arc-base-table td { white-space: nowrap; max-width: 260px; overflow: hidden; text-overflow: ellipsis; }
.arc-base-table tr[data-href] { cursor: pointer; }
.arc-base-table tr[data-href]:hover td { background: var(--accent-soft); }
.arc-base-table th a { color: inherit; text-decoration: none; white-space: nowrap; }
.arc-base-table th a.on { color: inherit; text-decoration: underline; text-underline-offset: 3px; }

/* Activité */
.arc-bars { display: grid; grid-template-columns: repeat(30, minmax(0, 1fr)); align-items: end; gap: 3px; height: 140px; padding-top: 8px; }
.arc-bars div { background: var(--accent-2); border-radius: 3px 3px 0 0; min-height: 2px; position: relative; }
.arc-bars div:hover { background: var(--accent); }
.arc-bars-axis { display: flex; justify-content: space-between; font: 500 11.5px var(--mono); color: var(--fg-3); margin-top: 6px; }
.input-pair { display: flex; gap: 6px; } .input-pair input { min-width: 0; flex: 1; }

.arc-alert-table td { vertical-align: middle; } .arc-alert-table td:nth-child(3) { white-space: normal; }
.arc-merge { width: min(1180px, 96vw); } .arc-merge-table td { vertical-align: top; } .arc-merge-table .sub { display: block; font-size: 12px; color: var(--fg-3); } .arc-merge-table .check { display: flex; gap: 6px; align-items: center; margin: 2px 0; }
.arc-signal-table td { vertical-align: top; } .arc-signal-table td:nth-child(3), .arc-signal-table td:nth-child(4) { white-space: normal; min-width: 200px; }
.toolbar.toolbar-form { flex-wrap: wrap; } .toolbar.toolbar-form select, .toolbar.toolbar-form input[type="text"], .toolbar.toolbar-form input[type="search"] { width: auto; flex: 0 1 auto; max-width: 100%; } .toolbar.toolbar-form select { min-width: 150px; }
/* Console Utilisateurs : colonne CRM (accès liés et rattachement d'un compte de l'intranet) */
.crm-cell { min-width: 220px; white-space: normal; } .crm-cell .crm-acc { display: flex; align-items: center; gap: 6px; } .crm-cell .crm-acc form { display: inline; }
.crm-link { display: flex; flex-wrap: wrap; gap: 4px; align-items: center; } .crm-link select { height: 30px; font-size: 12.5px; padding: 0 6px; width: auto; max-width: 170px; }
