.pilotage-page { display: grid; gap: 20px; }
.pilotage-page > .page-header { margin-bottom: 0; }
.pilotage-page .header-actions { flex-wrap: wrap; justify-content: flex-end; }
.demo-notice { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border: 1px solid #dbe5ea; border-radius: 12px; color: #53626d; background: #f8fbfc; font-size: 12px; }
.demo-notice span { padding: 4px 8px; border-radius: 999px; background: #fff0d8; color: #8a5700; font-weight: 750; white-space: nowrap; }
.export-button { min-height: 40px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 0 13px; border-radius: 8px; font-size: 12px; font-weight: 700; background: #fff; cursor: pointer; }
.export-button svg { width: 16px; height: 16px; }.export-button.excel { border: 1px solid #2c7b53; color: #236744; }.export-button.excel:hover { background: #eef8f2; }.export-button.powerpoint { border: 1px solid #c56a2b; color: #a8541e; }.export-button.powerpoint:hover { background: #fff5ed; }

.kpi-filters { display: grid; grid-template-columns: 1.15fr repeat(3, minmax(0, 1fr)) 1.25fr; align-items: end; gap: 11px; padding: 15px; background: #fff; border: 1px solid #e1e8ec; border-radius: 15px; box-shadow: 0 7px 24px rgba(24, 57, 75, .05); }
.kpi-filters > label, .campaign-toolbar label { display: grid; gap: 6px; min-width: 0; }.kpi-filters label > span, .campaign-toolbar label > span { color: #6b7982; font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.kpi-filters select, .campaign-toolbar select { width: 100%; min-height: 41px; padding: 0 32px 0 10px; border: 1px solid #d6e0e5; border-radius: 9px; background: #fff; color: #18394b; font: inherit; }
.filter-utilities { display: flex; align-items: center; justify-content: flex-end; gap: 7px; flex-wrap: wrap; }.inline-check { min-height: 39px; display: flex !important; align-items: center; gap: 7px !important; padding: 0 9px; border: 1px solid #dce4e8; border-radius: 9px; background: #f8fafb; color: #5e6d76; font-size: 10px; }.inline-check input { margin: 0; }.quick-filter-button { min-height: 39px; display: inline-flex; align-items: center; gap: 6px; padding: 0 10px; border: 1px solid #bcd3e1; border-radius: 9px; color: #24688f; background: #f3f8fb; font-size: 10px; font-weight: 700; }.quick-filter-button svg { width: 14px; }.quick-filter-button.active { color: #fff; background: #246f98; }

.kpi-summary { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }.kpi-summary-card { display: flex; gap: 10px; min-width: 0; padding: 15px; border: 1px solid #e1e8ec; border-radius: 14px; background: #fff; box-shadow: 0 5px 18px rgba(24,57,75,.04); }.kpi-summary-dot { width: 8px; height: 8px; margin-top: 5px; border-radius: 50%; flex: 0 0 auto; background: #1f5f85; }.kpi-summary-card.green .kpi-summary-dot { background: #2b8a5b; }.kpi-summary-card.orange .kpi-summary-dot { background: #d98a20; }.kpi-summary-card.red .kpi-summary-dot { background: #c64d57; }.kpi-summary-card.gray .kpi-summary-dot { background: #9ba8af; }.kpi-summary-card small { display: block; color: #5f6e78; font-size: 11px; font-weight: 700; }.kpi-summary-card strong { display: block; margin: 4px 0; color: #17394b; font-size: 24px; line-height: 1; }.kpi-summary-card p { margin: 6px 0 0; color: #8a969d; font-size: 10px; }

.process-card-grid { display: grid; grid-template-columns: repeat(7, minmax(142px, 1fr)); gap: 9px; min-width: 0; }.process-kpi-card { min-width: 0; padding: 13px; text-align: left; border: 1px solid var(--process-border); border-top: 3px solid var(--process-color); border-radius: 14px; background: linear-gradient(180deg, var(--process-bg), #fff 58%); color: #18394b; box-shadow: 0 5px 18px rgba(24,57,75,.045); transition: .18s ease; cursor: pointer; }.process-kpi-card:hover, .process-kpi-card.active { transform: translateY(-2px); box-shadow: 0 9px 24px rgba(24,57,75,.12); }.process-kpi-card.active { outline: 2px solid var(--process-color); outline-offset: 1px; }.process-kpi-card.own-process { box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--process-color) 65%, transparent), 0 7px 20px rgba(24,57,75,.09); }
.process-kpi-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 6px; }.process-code, .process-cell-code { display: inline-flex; align-items: center; justify-content: center; padding: 4px 7px; border: 1px solid var(--process-border); border-radius: 7px; color: var(--process-color); background: var(--process-bg); font-size: 10px; font-weight: 850; letter-spacing: .08em; }.process-performance { display: flex; align-items: center; gap: 4px; min-width: 0; color: #6d7b84; }.process-performance svg { width: 14px; height: 14px; flex: 0 0 auto; }.process-performance b { max-width: 76px; font-size: 8px; line-height: 1.15; text-align: right; }.process-performance.green { color: #21784e; }.process-performance.orange { color: #ad6a12; }.process-performance.red { color: #b43c49; }
.process-kpi-card h3 { margin: 9px 0 3px; font-size: 15px; }.process-pilot { min-height: 29px; margin: 0; color: #667681; font-size: 9px; line-height: 1.25; }.process-numbers { display: grid; grid-template-columns: 1fr; margin: 10px 0 8px; }.process-numbers span { padding: 7px; border-radius: 7px; background: rgba(255,255,255,.72); color: #75828a; font-size: 8px; text-align: center; }.process-numbers strong { display: inline; margin-right: 4px; color: #18394b; font-size: 13px; }.process-rate { display: flex; align-items: baseline; justify-content: space-between; margin: 7px 0; }.process-rate strong { font-size: 20px; }.process-rate span { color: #79858d; font-size: 9px; }.process-completion { display: grid; gap: 5px; color: #71808a; font-size: 8px; }.process-completion i { height: 5px; overflow: hidden; border-radius: 999px; background: #e7ecef; }.process-completion i b { display: block; width: var(--completion); height: 100%; border-radius: inherit; background: var(--process-color); }.completion-message { min-height: 34px; display: flex; align-items: flex-start; gap: 6px; margin-top: 8px; padding-top: 8px; border-top: 1px solid rgba(120,140,150,.16); color: #66757e; font-size: 8px; line-height: 1.25; }.completion-message i { width: 7px; height: 7px; margin-top: 1px; flex: 0 0 auto; border-radius: 50%; background: #9aa7ae; }.completion-message.complete i { background: #2b8a5b; }.completion-message.incomplete i { background: #c64d57; }.completion-message.incomplete { color: #9d3c46; }

.kpi-table-panel { overflow: hidden; }.kpi-table-wrap { overflow: auto; }.kpi-table { width: 100%; min-width: 1240px; border-collapse: collapse; }.kpi-table.compact { min-width: 980px; }.kpi-table th { padding: 10px 11px; color: #718089; background: #f7f9fa; border-bottom: 1px solid #e2e8eb; font-size: 9px; letter-spacing: .055em; text-align: left; text-transform: uppercase; white-space: nowrap; }.kpi-table td { padding: 12px 11px; border-bottom: 1px solid #edf1f3; color: #53636c; font-size: 11px; vertical-align: top; }.kpi-table tbody tr:last-child td { border-bottom: 0; }.kpi-row { cursor: pointer; }.kpi-row:hover { background: #f9fbfc; }.kpi-row.own-process { box-shadow: inset 3px 0 var(--process-color); background: var(--process-bg); }.kpi-row td:first-child { min-width: 118px; }.kpi-row td:nth-child(2) { min-width: 275px; }.kpi-table td > strong, .kpi-table td > span { display: block; }.kpi-table td:first-child > strong { margin-top: 6px; color: #344957; font-size: 10px; }.kpi-table td:nth-child(2) > span { margin-top: 4px; color: #70808a; }.kpi-table td small { display: block; margin-top: 4px; color: #8c989f; }.kpi-empty { display: grid; place-items: center; min-height: 110px; color: #839098; text-align: center; }
.entry-status { display: inline-flex !important; flex-direction: row !important; align-items: center; gap: 6px; padding: 5px 8px; border-radius: 999px; font-size: 9px; font-weight: 750; white-space: nowrap; }.entry-status i { width: 7px; height: 7px; border-radius: 50%; }.entry-status.complete { color: #17663f; background: #e5f4ec; }.entry-status.complete i { background: #2b8a5b; }.entry-status.incomplete { color: #98313c; background: #fbe8ea; }.entry-status.incomplete i { background: #c64d57; }.entry-status.neutral { color: #69777f; background: #edf1f3; }.entry-status.neutral i { background: #9ba8af; }
.performance-status { display: inline-flex !important; flex-direction: row !important; align-items: center; gap: 5px; min-width: 0; font-size: 9px; font-weight: 750; white-space: nowrap; }.performance-status svg { width: 15px; height: 15px; flex: 0 0 auto; }.performance-status.green { color: #21784e; }.performance-status.orange { color: #ad6a12; }.performance-status.red { color: #b43c49; }.performance-status.gray, .performance-status.future, .performance-status.notExpected { color: #748189; }.table-action { display: inline-grid; place-items: center; width: 30px; height: 30px; padding: 0; border: 1px solid #dce5e9; border-radius: 8px; background: #fff; color: #276b91; cursor: pointer; }.table-action svg, .read-only-action svg { width: 14px; height: 14px; }.read-only-action { display: inline-grid; place-items: center; width: 30px; height: 30px; color: #9aa5ab; }

.pilotage-waiting { display: grid; place-items: center; min-height: 390px; padding: 50px; text-align: center; }.pilotage-waiting > span { display: grid; place-items: center; width: 68px; height: 68px; border-radius: 20px; background: #e8f1f6; color: #246c94; }.pilotage-waiting > span svg { width: 31px; }.pilotage-waiting h2 { margin: 18px 0 5px; }.pilotage-waiting p { max-width: 520px; color: #71808a; }.pilotage-waiting button { margin-top: 16px; }
.campaign-toolbar { display: grid; grid-template-columns: 1fr 170px auto; align-items: end; gap: 18px; padding: 18px; }.campaign-toolbar > div { display: grid; gap: 3px; }.campaign-toolbar > div small { color: #7e8b93; }.campaign-toolbar > div strong { font-size: 26px; }.campaign-toolbar > div span { color: #71808a; font-size: 12px; }
.assignment-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); }.assignment-grid article { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; min-width: 0; padding: 13px 16px; border-right: 1px solid #edf1f3; border-bottom: 1px solid #edf1f3; background: linear-gradient(90deg, var(--process-bg), #fff 70%); }.assignment-grid article:nth-child(4n) { border-right: 0; }.assignment-grid strong { font-size: 11px; }.assignment-grid p { margin: 3px 0 0; color: #697780; font-size: 9px; }
.admin-kpi-list { display: grid; }.admin-kpi-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto auto; gap: 13px; align-items: center; padding: 14px 17px; border-left: 3px solid var(--process-color); border-bottom: 1px solid #e8edef; }.admin-kpi-row:last-child { border-bottom: 0; }.admin-kpi-row.archived { opacity: .62; }.admin-kpi-row p { margin: 4px 0; color: #596a74; }.admin-kpi-row small { color: #849098; }.admin-kpi-state { padding: 5px 8px; border-radius: 999px; background: #e7f3ed; color: #28724f; font-size: 9px; font-weight: 750; }.admin-kpi-row.archived .admin-kpi-state { color: #6d7a82; background: #edf0f2; }.admin-kpi-actions { display: flex; gap: 6px; }
.export-history-list { display: grid; }.export-history-list article { display: flex; align-items: center; gap: 12px; padding: 12px 17px; border-bottom: 1px solid #edf1f3; }.export-history-list article:last-child { border-bottom: 0; }.export-kind { min-width: 78px; padding: 5px 8px; border-radius: 999px; text-align: center; font-size: 9px; font-weight: 750; }.export-kind.xlsx { color: #236744; background: #e8f5ed; }.export-kind.pptx { color: #a8541e; background: #fff0e5; }.export-history-list p { margin: 4px 0 0; color: #78858d; font-size: 10px; }
.month-selector { display: grid; grid-template-columns: repeat(6, 1fr); gap: 7px; margin: 0; padding: 10px; border: 1px solid #dce4e8; border-radius: 10px; }.month-selector legend { padding: 0 5px; color: #5d6b74; font-size: 11px; font-weight: 700; }.month-selector label { display: flex !important; flex-direction: row !important; align-items: center; gap: 5px !important; padding: 6px; border-radius: 7px; background: #f7f9fa; }.month-selector input { width: auto !important; }.collaborator-selector { display: grid; gap: 8px; }.collaborator-selector label { display: flex; align-items: center; gap: 10px; padding: 10px; border: 1px solid #e0e7eb; border-radius: 9px; }.collaborator-selector label > span { display: grid; gap: 2px; }.collaborator-selector small { color: #839098; }

.kpi-detail-modal { width: min(1120px, calc(100vw - 36px)); }.kpi-detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }.kpi-detail-grid article, .detail-chart, .kpi-detail-bottom article { padding: 15px; border: 1px solid #e2e9ec; border-radius: 12px; background: #fbfcfd; }.kpi-detail-grid h3, .detail-chart h3, .kpi-detail-bottom h3 { margin: 0 0 7px; font-size: 13px; }.kpi-detail-grid p { margin: 4px 0; color: #687780; font-size: 12px; }.detail-chart { margin: 15px 0; background: #fff; }.line-chart { width: 100%; height: 180px; overflow: visible; }.line-chart polyline { fill: none; stroke: #26749f; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }.line-chart circle { fill: #fff; stroke: #26749f; stroke-width: 3; }.chart-gridline { fill: none; stroke: #dfe7eb; stroke-width: 1; }.chart-labels { display: flex; justify-content: space-between; color: #859199; font-size: 10px; }.chart-empty { display: grid; place-items: center; min-height: 140px; color: #839098; }.kpi-detail-bottom { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 15px; }.kpi-detail-bottom ul { margin: 8px 0 0; padding-left: 18px; color: #65747d; font-size: 12px; }.kpi-detail-bottom li + li { margin-top: 7px; }.kpi-form-grid .inline-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }.checkbox-label { display: flex !important; flex-direction: row !important; align-items: center; gap: 8px; align-self: center; }.checkbox-label input { width: auto !important; }

@media (max-width: 1320px) { .process-card-grid { display: flex; overflow-x: auto; padding: 2px 2px 9px; scroll-snap-type: x proximity; }.process-kpi-card { min-width: 170px; flex: 0 0 170px; scroll-snap-align: start; }.assignment-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }.assignment-grid article:nth-child(4n) { border-right: 1px solid #edf1f3; }.assignment-grid article:nth-child(3n) { border-right: 0; } }
@media (max-width: 1050px) { .kpi-filters { grid-template-columns: repeat(2, minmax(0,1fr)); }.filter-utilities { justify-content: flex-start; }.kpi-summary { grid-template-columns: repeat(3, 1fr); }.pilotage-page .header-actions { width: 100%; justify-content: flex-start; }.pilotage-page .page-header { align-items: flex-start; flex-direction: column; } }
@media (max-width: 820px) { .kpi-summary { grid-template-columns: repeat(2, 1fr); }.campaign-toolbar { grid-template-columns: 1fr; align-items: stretch; }.assignment-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }.assignment-grid article:nth-child(3n) { border-right: 1px solid #edf1f3; }.assignment-grid article:nth-child(2n) { border-right: 0; }.admin-kpi-row { grid-template-columns: auto 1fr; }.admin-kpi-state, .admin-kpi-actions { grid-column: 2; }.kpi-detail-grid, .kpi-detail-bottom { grid-template-columns: 1fr; }.month-selector { grid-template-columns: repeat(4, 1fr); } }
@media (max-width: 560px) { .pilotage-page { gap: 14px; }.demo-notice { align-items: flex-start; flex-direction: column; }.kpi-filters, .kpi-summary { grid-template-columns: 1fr; }.kpi-summary-card small { min-height: 0; }.process-kpi-card { min-width: 205px; flex-basis: 205px; }.pilotage-page .header-actions { display: grid; grid-template-columns: 1fr; }.export-button, .pilotage-page .header-actions .primary-button { width: 100%; }.pilotage-waiting { min-height: 320px; padding: 30px 18px; }.assignment-grid { grid-template-columns: 1fr; }.assignment-grid article { border-right: 0 !important; }.admin-kpi-row { gap: 10px; padding: 14px; }.kpi-detail-modal { width: calc(100vw - 18px); }.kpi-form-grid .inline-inputs { grid-template-columns: 1fr; }.month-selector { grid-template-columns: repeat(3, 1fr); } }

/* Tableau annuel, groupes de processus et référentiel enrichi. */
.kpi-filters.annual { grid-template-columns: repeat(3, minmax(0, 1fr)) auto; }
.kpi-summary-card small { min-height: 27px; font-size: 10px; line-height: 1.3; }
.kpi-summary-card p { font-size: 9px; }
.my-process-badge { padding: 3px 5px; border: 1px solid var(--process-border); border-radius: 999px; color: var(--process-color); background: #fff; font-size: 7px; font-weight: 800; white-space: nowrap; }
.process-performance { margin-left: auto; }
.process-completion { min-height: 31px; line-height: 1.25; }
.next-collection { min-height: 22px; margin: 5px 0 0; color: #78868e; font-size: 7.5px; line-height: 1.25; }
.indicator-identity { display: grid; gap: 4px; }
.indicator-identity > strong { color: #263f4f; font-size: 11px; }
.indicator-identity > span { color: #70808a; }
.indicator-code-link { padding: 0; border: 0; background: transparent; color: #1f6f9d; font: inherit; font-weight: 800; cursor: pointer; }
.indicator-code-link:hover { color: #164f70; text-decoration: underline; }
.indicator-code-link:focus-visible { border-radius: 3px; outline: 2px solid #78b6d6; outline-offset: 2px; }
.indicator-identity > small { display: flex !important; align-items: center; gap: 5px; min-width: 0; margin-top: 2px !important; }
.indicator-type-badge, .axis-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 24px; padding: 3px 5px; border: 1px solid #cfd9df; border-radius: 5px; background: #f7f9fa; color: #53636d; font-size: 8px; font-weight: 850; line-height: 1; }
.axis-badge { min-width: 43px; cursor: pointer; }
.axis-badge:hover { color: #1d638a; border-color: #8eb7cc; background: #eef6fa; }
.axis-name { display: block; max-width: 245px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #87949b; }
.process-group-heading td { padding: 0 !important; border-bottom: 1px solid var(--process-border) !important; background: linear-gradient(90deg, var(--process-bg), #fff 78%); }
.process-group-heading button { width: 100%; display: grid; grid-template-columns: 20px auto minmax(145px,1fr) minmax(170px,1.2fr) auto auto; align-items: center; gap: 10px; padding: 11px 13px; border: 0; background: transparent; color: #314b5b; text-align: left; cursor: pointer; }
.group-chevron { display: grid; place-items: center; color: var(--process-color); }
.group-chevron svg { width: 15px; transition: transform .16s ease; }
.process-table-group.collapsed .group-chevron svg { transform: rotate(-90deg); }
.group-title { display: grid; gap: 2px; }
.group-title strong { color: var(--process-color); font-size: 12px; }
.group-title small { margin: 0 !important; text-transform: capitalize; }
.group-pilots { color: #667680; font-size: 9px; }
.group-count, .group-missing { padding: 5px 7px; border-radius: 999px; background: rgba(255,255,255,.78); color: #677780; font-size: 8px; font-weight: 750; white-space: nowrap; }
.group-missing.alert { color: #9a3641; background: #fff0f1; }
.admin-kpi-filter-panel > .panel-header { align-items: flex-end; }
.admin-kpi-filters { display: grid; grid-template-columns: repeat(3, minmax(120px, 1fr)); gap: 8px; }
.admin-kpi-filters label { display: grid; gap: 4px; }
.admin-kpi-filters label > span { color: #6b7982; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.admin-kpi-filters select { min-height: 35px; border: 1px solid #d6e0e5; border-radius: 8px; background: #fff; }
.result-form-overview { display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: center; margin-bottom: 14px; padding: 12px; border: 1px solid var(--process-border); border-left: 4px solid var(--process-color); border-radius: 10px; background: var(--process-bg); }
.result-form-overview strong { color: #263f4f; }
.result-form-overview p { margin: 4px 0 0; color: #667680; font-size: 10px; }
.result-entry-grid input[readonly] { color: #315264; background: #f3f7f9; font-weight: 700; }
.kpi-detail-modal { overflow-x: hidden; overflow-y: auto; }
.kpi-detail-sections { display: grid; min-width: 0; gap: 16px; overflow-x: hidden; }
.kpi-detail-section { min-width: 0; max-width: 100%; padding: 16px; border: 1px solid #dfe8ec; border-radius: 14px; background: #fff; }
.detail-section-heading { display: flex; align-items: center; gap: 11px; margin-bottom: 14px; }
.detail-section-heading > span:first-child { display: grid; flex: 0 0 28px; width: 28px; height: 28px; place-items: center; border-radius: 50%; color: #fff; background: #276f98; font-size: 11px; font-weight: 850; }
.detail-section-heading h3 { margin: 0; color: #263f4f; font-size: 14px; }
.detail-section-heading p { margin: 3px 0 0; color: #7a8991; font-size: 10px; }
.indicator-information-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.indicator-information-grid article { display: grid; gap: 5px; min-height: 58px; padding: 10px 12px; border: 1px solid #e8eef1; border-radius: 9px; background: #f8fafb; }
.indicator-information-grid article.wide { grid-column: span 2; }
.indicator-information-grid small { color: #829098; font-size: 8px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.indicator-information-grid strong { color: #344d5c; font-size: 11px; line-height: 1.35; }
.active-result-section { border-left: 4px solid #2b7ca8; background: #fbfdfe; }
.detail-period-status, .detail-section-heading > .entry-status { width: auto; margin-left: auto; }
.detail-period-status { padding: 5px 8px; border-radius: 999px; color: #63747d; background: #edf2f4; font-size: 9px; font-weight: 800; }
.detail-period-status.future { color: #786329; background: #fff7dc; }
.detail-result-actions { display: flex; align-items: center; justify-content: flex-end; }
.detail-result-actions p { margin: 0; color: #7d8990; font-size: 10px; }
.history-year-filter { display: grid; min-width: 105px; gap: 4px; margin-left: auto; }
.history-year-filter span { color: #7b8991; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.history-year-filter select { min-height: 34px; padding: 0 9px; border: 1px solid #d5e0e5; border-radius: 8px; background: #fff; color: #3e5563; }
.history-table { min-width: 1080px !important; }
.history-section .kpi-table-wrap { width: 100%; min-width: 0; max-width: 100%; }
.history-table td:nth-child(4) { min-width: 220px; white-space: normal; }
.history-empty { padding: 24px; color: #7f8d94; text-align: center; }
.kpi-attachment-link { display: inline-flex !important; align-items: center; gap: 5px; color: #1f6f9d; font-size: 9px; font-weight: 700; text-decoration: none; }
.kpi-attachment-link svg { width: 13px; height: 13px; }
.kpi-attachment-link:hover { text-decoration: underline; }
.result-entry-grid label > small { margin-top: 5px; color: #78878f; font-size: 9px; }
.result-existing-meta { display: flex; flex-wrap: wrap; gap: 8px 18px; padding: 10px 12px; border: 1px solid #dfe8ec; border-radius: 9px; background: #f6f9fa; color: #60717b; font-size: 9px; }
.correction-reason textarea { border-color: #d59a52; background: #fffaf3; }
.correction-trace { margin-top: 7px; color: #536873; font-size: 9px; }
.correction-trace summary { color: #1f6f9d; font-weight: 800; cursor: pointer; }
.correction-trace article { margin-top: 6px; padding: 8px; border-left: 3px solid #d59a52; border-radius: 5px; background: #fffaf3; }
.correction-trace p { margin: 4px 0; }

@media (max-width: 1050px) {
  .kpi-filters.annual { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .process-group-heading button { grid-template-columns: 20px auto 1fr auto; }
  .group-pilots { grid-column: 3; }
  .group-count, .group-missing { grid-column: 4; }
}
@media (max-width: 820px) {
  .admin-kpi-filter-panel > .panel-header { align-items: stretch; flex-direction: column; }
  .admin-kpi-filters { width: 100%; }
  .indicator-information-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Harmonisation compacte : le tableau de bord conserve ses cartes et son tableau. */
.pilotage-page { gap: 18px; }
.kpi-filters { gap: 8px; padding: 10px 12px; border-radius: 12px; }
.kpi-filters > label, .campaign-toolbar label { gap: 4px; }
.kpi-filters select, .campaign-toolbar select { min-height: 38px; }
.filter-utilities .inline-check, .filter-utilities .quick-filter-button { min-height: 36px; }
@media (max-width: 560px) {
  .kpi-filters.annual, .admin-kpi-filters { grid-template-columns: 1fr; }
  .kpi-detail-section { padding: 12px; }
  .detail-section-heading { align-items: flex-start; flex-wrap: wrap; }
  .history-year-filter { width: 100%; margin-left: 39px; }
  .indicator-information-grid { grid-template-columns: 1fr; }
  .indicator-information-grid article.wide { grid-column: auto; }
  .detail-result-actions { justify-content: stretch; }
  .detail-result-actions .primary-button { width: 100%; }
}
