Spaces:
Running
Running
| /* ============================================================ | |
| Styles personnalisés — Tableau de bord COP Régionales | |
| Complément au DSFR | |
| ============================================================ */ | |
| /* ------- Forcer le thème clair ------- */ | |
| :root, [data-fr-scheme="light"] { | |
| --background-default-grey: #fff ; | |
| --text-default-grey: #161616 ; | |
| --background-contrast-grey: #f5f5f5 ; | |
| --text-title-grey: #161616 ; | |
| --background-alt-grey: #f6f6f6 ; | |
| --text-action-high-blue-france: #000091 ; | |
| color-scheme: light ; | |
| } | |
| body { | |
| background: #fff ; | |
| color: #161616 ; | |
| } | |
| /* ------- Variables ------- */ | |
| :root { | |
| --region-grand-est: #000091; | |
| --region-occitanie: #CE614A; | |
| --region-aura: #009081; | |
| --region-normandie: #5770BE; | |
| --green-compare: #18753C; | |
| --orange-partial: #E4794A; | |
| --grey-na: #929292; | |
| } | |
| /* ------- Badges régionaux ------- */ | |
| .region-badge { | |
| display: inline-block; | |
| padding: 0.15rem 0.6rem; | |
| border-radius: 4px; | |
| font-size: 0.8rem; | |
| font-weight: 700; | |
| color: #fff; | |
| } | |
| .region-grand-est { background-color: var(--region-grand-est); } | |
| .region-occitanie { background-color: var(--region-occitanie); } | |
| .region-aura { background-color: var(--region-aura); } | |
| .region-normandie { background-color: var(--region-normandie); } | |
| /* ------- Tuiles de synthèse ------- */ | |
| .tile-category { | |
| background: #fff; | |
| border: 1px solid #ddd; | |
| border-radius: 8px; | |
| padding: 1rem 1.2rem; | |
| cursor: pointer; | |
| transition: box-shadow 0.2s, transform 0.15s; | |
| text-align: center; | |
| min-height: 140px; | |
| display: flex; | |
| flex-direction: column; | |
| justify-content: center; | |
| } | |
| .tile-category:hover, | |
| .tile-category:focus { | |
| box-shadow: 0 4px 16px rgba(0, 0, 145, 0.15); | |
| transform: translateY(-2px); | |
| } | |
| .tile-category__icon { | |
| font-size: 2rem; | |
| margin-bottom: 0.3rem; | |
| } | |
| .tile-category__title { | |
| font-weight: 700; | |
| font-size: 0.95rem; | |
| color: #161616; | |
| margin-bottom: 0.3rem; | |
| } | |
| .tile-category__count { | |
| font-size: 0.8rem; | |
| color: #666; | |
| margin-bottom: 0.4rem; | |
| } | |
| .tile-category__bar { | |
| height: 6px; | |
| background: #e5e5e5; | |
| border-radius: 3px; | |
| overflow: hidden; | |
| } | |
| .bar-fill--green { | |
| height: 100%; | |
| background: var(--green-compare); | |
| border-radius: 3px; | |
| transition: width 0.4s ease; | |
| } | |
| /* ------- Tableau ------- */ | |
| .table-wrapper { | |
| overflow-x: auto; | |
| } | |
| #kpi-table { | |
| width: 100%; | |
| border-collapse: collapse; | |
| font-size: 0.875rem; | |
| } | |
| #kpi-table thead th { | |
| background-color: #000091; | |
| color: #fff; | |
| position: sticky; | |
| top: 0; | |
| z-index: 2; | |
| padding: 0.75rem 0.6rem; | |
| text-align: left; | |
| white-space: nowrap; | |
| } | |
| #kpi-table tbody td { | |
| padding: 0.6rem; | |
| vertical-align: top; | |
| border-bottom: 1px solid #eee; | |
| } | |
| #kpi-table tbody tr:hover { | |
| background-color: #f0f0ff; | |
| } | |
| /* Colonnes */ | |
| .col-indicateur { min-width: 170px; width: 170px; } | |
| .col-region { min-width: 190px; } | |
| .col-comparable { min-width: 85px; width: 85px; text-align: center ; } | |
| /* Ligne catégorie */ | |
| .category-row td { | |
| background-color: #E3E3FD ; | |
| font-weight: 700; | |
| font-size: 0.95rem; | |
| color: #000091; | |
| padding: 0.5rem 0.6rem ; | |
| } | |
| /* N/D */ | |
| .value-na { | |
| color: var(--grey-na); | |
| font-style: italic; | |
| font-size: 0.85rem; | |
| } | |
| /* ------- Tags comparables ------- */ | |
| .tag-comparable { | |
| display: inline-block; | |
| padding: 0.15rem 0.5rem; | |
| border-radius: 12px; | |
| font-size: 0.75rem; | |
| font-weight: 600; | |
| white-space: nowrap; | |
| cursor: help; | |
| } | |
| .tag-comparable--yes { | |
| background: #B8FEC9; | |
| color: #18753C; | |
| } | |
| .tag-comparable--partial { | |
| background: #FEE7B8; | |
| color: #A05A2C; | |
| } | |
| .tag-comparable--no { | |
| background: #eee; | |
| color: #929292; | |
| } | |
| /* ------- Liens source (p.XX) ------- */ | |
| .source-link { | |
| display: inline-block; | |
| font-size: 0.7rem; | |
| color: #000091; | |
| background: #E3E3FD; | |
| padding: 0.05rem 0.35rem; | |
| border-radius: 3px; | |
| text-decoration: none; | |
| margin-left: 0.2rem; | |
| font-weight: 600; | |
| vertical-align: middle; | |
| transition: background 0.15s; | |
| } | |
| .source-link:hover { | |
| background: #000091; | |
| color: #fff; | |
| } | |
| /* ------- Filtres ------- */ | |
| .filters-bar { | |
| background: #f9f9f9; | |
| border-radius: 8px; | |
| padding: 1rem; | |
| border: 1px solid #e5e5e5; | |
| } | |
| /* ------- Responsive ------- */ | |
| @media (max-width: 768px) { | |
| .col-indicateur { min-width: 140px; } | |
| .col-region { min-width: 150px; } | |
| .tile-category { min-height: 110px; } | |
| } | |