/* Shared presentation layer. No business rules or permission changes. */
:root {
  --couleur-primaire:#087f79;--couleur-primaire-hover:#06645f;--couleur-primaire-clair:#e6f4f2;--couleur-primaire-texte:#07665f;
  --couleur-fond:#f3f5f8;--couleur-surface:#fff;--couleur-texte:#15263b;--couleur-texte-att:#44566b;--couleur-texte-muted:#627185;
  --couleur-bordure:#dfe5ed;--couleur-bordure-forte:#b9c6d4;--rayon-sm:7px;--rayon-md:10px;--rayon-lg:12px;
  --ombre-sm:0 2px 5px rgb(21 38 59 / 3%);--ombre-md:0 10px 30px rgb(21 38 59 / 8%);
}
body{font-size:14px;line-height:1.6;letter-spacing:.005em}
h1{font-size:clamp(1.65rem,2.2vw,2.15rem);letter-spacing:-.035em;font-weight:750;line-height:1.2;margin-bottom:10px}
h2{font-size:1.2rem;letter-spacing:-.02em;margin-bottom:12px}h3{font-size:1rem;line-height:1.45}p{margin-bottom:16px}
[hidden]{display:none!important}.visuellement-cache{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.lien-evitement{position:fixed;top:-100px;left:70px;z-index:2000;background:white;padding:12px}.lien-evitement:focus{top:10px}
:focus-visible{outline:3px solid #087f79!important;outline-offset:3px!important}
.contenu{max-width:1560px;width:100%;padding:34px 36px 70px}.zone-contenu{padding-top:0;width:0;min-width:0}
.entete-page{margin-bottom:26px;align-items:center}.entete-page .titres{min-width:min(100%,240px)}
.sidebar-app{background:#14273e;border:0;width:246px;flex-basis:246px;color:#d9e4ef;position:sticky;top:0;height:100dvh}
.sidebar-app-interieur{width:246px;height:100%;padding-top:18px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#486078 #14273e}
.sidebar-app .marque{color:white;padding-left:24px;margin-bottom:28px;gap:12px;letter-spacing:-.03em;font-size:20px}
.logo-mark{background:#087f79;color:white;border-radius:9px;box-shadow:none}
.sidebar-liens{padding:0 12px;gap:0;flex:initial}.sidebar-lien,.sidebar-app button.sidebar-lien{color:#ccdae8;border-radius:7px;font-size:13px;padding:9px 12px;min-height:38px;white-space:normal;background:transparent}
.sidebar-lien:hover,.sidebar-app button.sidebar-lien:hover{color:white;background:#233d58;text-decoration:none}
.sidebar-lien.actif,.sidebar-app button.sidebar-lien.actif{color:white;background:#234a58;box-shadow:inset 3px 0 #4bc5b4}
.nav-rubrique{margin:4px 0 12px}.nav-rubrique>summary{display:flex;align-items:center;gap:10px;list-style:none;color:#d4e0ed;font-weight:650;font-size:13px;padding:11px 10px;border-radius:7px}
.nav-rubrique>summary::-webkit-details-marker{display:none}.nav-rubrique>summary::after{content:'›';margin-left:auto;transform:rotate(0);font-size:18px;color:#9eb2c7}
.nav-rubrique[open]>summary::after{transform:rotate(90deg)}.nav-rubrique>summary:hover{background:#203951;text-decoration:none;color:white}
.nav-rubrique .sidebar-lien{margin:2px 0 2px 12px;width:calc(100% - 12px)}.nav-rubrique .sidebar-sous-liens{padding-left:12px}
.nav-icone{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.7;flex-shrink:0}
.sidebar-utilisateur{border-top:1px solid #32475d;color:#d7e4f1;margin-top:22px;padding:18px 16px;display:block;font-size:12px}
.sidebar-utilisateur .nom-utilisateur{display:block!important;color:#e2eaf2}.sidebar-utilisateur .deconnexion{display:inline-block;color:#bdd0e1;padding-left:0}.sidebar-utilisateur img{display:none}
.sidebar-utilisateur label{color:#cbd9e6}.sidebar-utilisateur .form-select{font-size:12px}
.bouton-bascule-sidebar{top:18px;left:14px;width:36px;height:36px;box-shadow:none;border:1px solid #b9c6d4;background:white;color:#15263b;z-index:1051}
.sidebar-app .marque{padding-left:55px}.barre-app{position:sticky;top:0;z-index:25;display:flex;align-items:center;gap:20px;min-height:72px;padding:12px 32px;background:rgb(255 255 255 / 98%);border-bottom:1px solid var(--couleur-bordure)}
.sidebar-app:not(.show)~.zone-contenu .barre-app{padding-left:66px}.barre-app-marque{font-size:10px;letter-spacing:.13em;font-weight:750;color:#627185;white-space:nowrap}
.recherche-entete{display:flex;align-items:center;gap:8px;flex:1;max-width:540px;margin:0}.recherche-entete input{width:100%;min-width:0;border:1px solid #dfe5ed;border-radius:8px;background:#f6f8fa;padding:9px 12px;font-size:13px}.recherche-entete button{background:none;color:#07665f;padding:8px;font-size:12px}
.entete-suivi{margin-left:auto;font-size:12px;white-space:nowrap}.profil-entete{position:relative}.profil-entete summary{display:flex;align-items:center;gap:8px;list-style:none;white-space:nowrap;color:#15263b;font-size:12px}.profil-entete summary::-webkit-details-marker{display:none}
.avatar-initiale{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e6f4f2;color:#07665f;font-size:14px;font-weight:700}.profil-entete>div{position:absolute;right:0;top:46px;min-width:230px;max-width:calc(100vw - 32px);padding:20px;border:1px solid var(--couleur-bordure);background:white;border-radius:12px;box-shadow:var(--ombre-md);overflow-wrap:anywhere}.profil-entete p{font-size:12px}
.carte{padding:24px;margin-bottom:20px;box-shadow:var(--ombre-sm)}.carte h3{gap:8px;flex-wrap:wrap}.carte>p:last-child{margin-bottom:0}
.contenu .actions{gap:10px}.contenu a.btn-secondaire,.contenu a.btn-principal,.contenu a.btn-danger{display:inline-flex;align-items:center;justify-content:center;padding:10px 15px;border-radius:7px;font-size:13px;min-height:40px;line-height:1.4;text-decoration:none;font-weight:600}
.btn-principal{background:var(--couleur-primaire);color:white}.btn-principal:hover{background:var(--couleur-primaire-hover);color:white}
.btn-primary{--bs-btn-bg:#087f79;--bs-btn-border-color:#087f79;--bs-btn-hover-bg:#06645f;--bs-btn-hover-border-color:#06645f;--bs-btn-active-bg:#06645f}.bg-primary{background-color:#087f79!important}
button,input[type=submit]{font-size:13px;min-height:40px;line-height:1.4;border-radius:7px;white-space:normal;padding:10px 15px}
button.btn-danger,a.btn-danger{background:#fff1f1;color:#a21e2b;border:1px solid #f0c7cc}button.btn-danger:hover,a.btn-danger:hover{background:#ffe3e6;color:#881824}
.champ input,.champ select,.champ textarea,.form-control,.form-select{border-color:#c9d3df;border-radius:7px;background:#fff;color:#15263b;min-height:40px}.champ label,label{font-weight:550}.champ label{font-size:13px}.champ textarea{min-height:110px}
input[type=checkbox],input[type=radio]{accent-color:#087f79;width:17px;height:17px;vertical-align:middle;flex-shrink:0}
.lot-form>.lot-cartes,.espace-form{margin-bottom:18px}.lot-form .lot-cartes label{font-size:13px}.lot-form textarea{min-height:95px}
.badge{font-weight:600;font-size:11px;letter-spacing:.015em;padding:5px 9px;line-height:1.5;white-space:normal;text-align:left;border-radius:6px}
.badge-attention{background:#fff3dc;color:#855300;border:1px solid #e9ce9c}
.table-scroll{border-radius:12px;overflow:visible;box-shadow:none;margin:18px 0}.table-scroll table,table{table-layout:auto;max-width:100%}
th,td{padding:14px 16px;font-size:13px;line-height:1.55}th{text-transform:none;letter-spacing:0;font-size:12px;background:#edf2f6;font-weight:650;color:#43566d;min-width:0!important}
.ligne-recherche-colonnes th{background:#f8fafc;padding:9px 10px}.recherche-colonne{min-width:0;width:100%;padding:7px 8px;font-size:11px}
tbody tr:hover{background:#f0f8f7}td a strong{font-weight:650}.table-scroll .rangee-actions{gap:6px}.table-scroll button,.table-scroll a.btn-secondaire{font-size:11px;padding:6px 10px;min-height:32px}
.densite-compacte th,.densite-compacte td{padding-top:8px;padding-bottom:8px}.outils-tableau{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:18px 0 8px;flex-wrap:wrap}.outils-tableau p{font-size:12px;margin:0;color:var(--couleur-texte-muted)}
.choix-segmente{display:inline-flex;gap:3px;padding:3px;background:#e8eef3;border:1px solid #dfe5ed;border-radius:9px;flex-wrap:wrap}.choix-segmente button{min-height:32px;font-size:12px;padding:7px 12px;color:#44566b;background:transparent}.choix-segmente button[aria-pressed=true]{background:white;color:#07665f;box-shadow:0 1px 3px #15263b12}
.menu-colonnes>div.carte{max-height:65vh;overflow:auto}.pagination-barre{gap:18px;flex-wrap:wrap}.pagination-barre button{color:#07665f;background:white;border:1px solid var(--couleur-bordure)}.pagination-barre button:disabled{color:#627185;opacity:.5}.pagination-select-taille{min-height:36px}
.panneau-filtres{border-radius:12px;box-shadow:none}.panneau-filtres-entete{padding:16px}.panneau-filtres-vide{font-style:normal;color:#627185}.panneau-filtres-chip-effacer{min-height:24px;min-width:24px;padding:2px}
.vues-favorites-barre{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:14px}.vues-favorites-barre select{width:auto;flex:1;min-width:170px;max-width:320px;margin:0}.vues-favorites-barre button{font-size:12px;min-height:38px}
.filtres-texte-actifs{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.filtre-texte-puce{font-size:12px;min-height:30px;padding:5px 10px;background:#e6f4f2;color:#07665f;border:1px solid #acd5cf}
.apercu-ligne{display:block;font-size:11px!important;padding:2px 0!important;min-height:24px!important;border:0;background:transparent!important;color:#07665f!important;text-align:left}
.panneau-apercu{position:fixed;inset:0 0 0 auto;margin:0;width:min(500px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-left:1px solid #c9d3df;padding:28px;background:white;color:#15263b;box-shadow:-15px 0 60px #14273e22;overflow:auto}
.panneau-apercu::backdrop{background:#14273e55}.apercu-entete{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px}.apercu-entete h2{margin:0;font-size:1.5rem;overflow-wrap:anywhere}.apercu-entete button{flex-shrink:0;background:#edf2f6;color:#15263b}
.panneau-apercu dl{display:grid;grid-template-columns:minmax(100px,1fr) minmax(0,2fr);gap:12px 18px;margin:25px 0}.panneau-apercu dt{font-size:12px;color:#627185}.panneau-apercu dd{margin:0;font-size:14px;overflow-wrap:anywhere;white-space:pre-wrap}.panneau-apercu>p{white-space:pre-wrap;overflow-wrap:anywhere}
.onglets-fiche{display:flex;gap:6px;flex-wrap:wrap;padding:6px;background:white;border:1px solid var(--couleur-bordure);border-radius:10px;margin:24px 0}
.onglets-fiche button{background:transparent;color:#52667c;min-height:42px;padding:10px 18px}.onglets-fiche button[aria-selected=true]{background:#e6f4f2;color:#07665f;font-weight:700}.fiche-panel{outline:none}
.fiche-resume-entete{margin-bottom:22px}.fiche-panel .carte{margin-bottom:18px}.fiche-panel .carte h3{font-size:14px;margin-bottom:16px}.fiche-panel[data-section=profil]{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:0 20px}.fiche-panel[data-section=profil]>.carte:first-child{grid-column:1/-1}
.indicateurs-journee{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.indicateur-journee{padding:20px;background:white;border:1px solid var(--couleur-bordure);border-radius:12px}.indicateur-journee strong{display:block;font-size:30px;font-weight:700;letter-spacing:-.04em;line-height:1.3}.indicateur-journee span{display:block;font-size:12px;color:#627185}.indicateur-journee.attention strong{color:#a65e0b}
.action-journee{border-left:3px solid #9fb3c8}.action-journee[data-priorite=urgente]{border-left-color:#b91c1c}.action-journee[data-priorite=haute]{border-left-color:#d28b32}.action-journee h3{font-size:16px}
.barre-notes{flex-wrap:wrap!important;gap:8px!important}.option-note{border:1px solid #c9d3df;border-radius:8px;padding:10px;min-width:46px;justify-content:center;background:white}.option-note:has(input:checked){background:#087f79;color:white;border-color:#087f79;box-shadow:0 0 0 2px #c3e6df}.option-note input{margin:0}.option-note:has(input:focus-visible){outline:3px solid #087f79;outline-offset:3px}
#statut-enregistrement{position:sticky;top:83px;z-index:10;background:#edf7f3;border:1px solid #bbdcd0;border-radius:8px;padding:10px 14px;color:#235642;min-height:40px!important;font-size:13px}#statut-enregistrement:empty{display:none}#statut-enregistrement[data-etat=echec]{background:#fff1f1;color:#a21e2b;border-color:#edc2c8}#statut-enregistrement[data-etat=encours]{background:#fff7e9;color:#815216;border-color:#ecd3a3}
#statut-suggestion-entretien:not(:empty),#apercu-suggestion{background:#eef3fa;border:1px solid #c6d4e7;border-radius:10px;padding:16px;color:#2e4d73}.ligne-entete-entretien{flex-wrap:wrap}.flash{border-radius:10px;padding:14px 18px}
.info-texte-complet{position:fixed;z-index:1200;max-width:min(440px,calc(100vw - 24px));max-height:45vh;overflow:auto;background:#14273e;color:#fff;padding:12px 16px;border-radius:8px;font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;pointer-events:none}
.texte-consultable{cursor:help}.espace-nav{border-bottom:1px solid var(--couleur-bordure);padding-bottom:14px;font-size:12px}.vue-pipeline-liste{display:block!important}.vue-pipeline-liste>section{margin-bottom:18px}.vue-pipeline-liste article{display:block;border-top:1px solid var(--couleur-bordure);padding-top:16px}
.mission-raccourcis{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.mission-raccourcis a{padding:9px 13px;background:white;border:1px solid var(--couleur-bordure);border-radius:7px;font-size:12px}
.page-login{background:#edf2f6;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);padding:0;gap:0}.login-identite{background:#14273e;color:#d4e3ed;height:100%;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:clamp(36px,6vw,100px)}.login-identite h2{font-size:clamp(30px,4vw,52px);color:white;line-height:1.15;max-width:13ch;letter-spacing:-.04em;margin:28px 0}.login-identite p{max-width:40ch;color:#bccddd;font-size:16px}.login-identite .login-signature{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:#72d5c8}.carte-login{margin:40px auto;max-width:440px;box-shadow:none;text-align:left;padding:38px;border:0;background:transparent}.carte-login .logo-mark{display:none}.carte-login h1{font-size:26px;letter-spacing:-.03em}.carte-login .bouton-google{margin-top:30px;background:white;min-height:48px}.login-note{font-size:12px;color:#627185;margin-top:24px}
.page-portail{max-width:980px;margin:0 auto;padding:50px 24px}.page-portail>header{padding:20px 0 30px;border-bottom:1px solid var(--couleur-bordure);margin-bottom:30px}.page-portail article{padding:28px;margin-bottom:22px;border:1px solid var(--couleur-bordure);border-radius:12px;background:white}.page-portail textarea{display:block;width:100%;padding:12px;border:1px solid var(--couleur-bordure-forte);border-radius:8px}.page-portail .rapport{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:1200px){.barre-app-marque{display:none}.contenu{padding:28px 24px 60px}.profil-nom{display:none}.indicateurs-journee{gap:10px}.indicateur-journee{padding:16px}}
@media(max-width:991px){.sidebar-app{position:fixed;height:100dvh}.barre-app{padding-left:65px;gap:10px;min-height:72px}.zone-contenu{padding-top:0}.entete-suivi{font-size:11px}.sidebar-utilisateur{padding-bottom:30px}.fiche-panel[data-section=profil]{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.contenu{padding:24px 16px 50px}.barre-app{padding-right:12px}.recherche-entete button{position:absolute;width:1px;height:1px;clip-path:inset(50%);padding:0;overflow:hidden}.recherche-entete button:focus{position:static;clip-path:none;width:auto;height:auto;padding:8px}.entete-suivi{display:none}.recherche-entete input{font-size:12px}.profil-entete>div{position:fixed;right:12px;top:64px}.carte{padding:18px}.indicateurs-journee{grid-template-columns:repeat(2,minmax(0,1fr))}.indicateur-journee strong{font-size:26px}.indicateur-journee span{font-size:11px}.onglets-fiche{gap:2px}.onglets-fiche button{padding:9px 10px;font-size:12px;flex:1 1 28%}.table-scroll{border:0;background:transparent}table{font-size:13px}.table-scroll table{background:transparent}table:has(td[data-label]) tbody tr{background:white;padding:15px;border-color:#d4dde6}table:has(td[data-label]) tbody td{padding:7px 0;border:0;font-size:13px}table:has(td[data-label]) tbody td::before{color:#627185;font-size:11px}table:has(td[data-label]) thead{display:block}table:has(td[data-label]) thead tr{display:flex;flex-wrap:wrap}table:has(td[data-label]) thead th{flex:1 1 100px;min-width:0!important;padding:9px;background:#edf2f6}table:has(td[data-label]) th:empty{display:none}table:not(:has(td[data-label])){table-layout:fixed}table input,table select,table textarea{max-width:100%;min-width:0!important}.barre-notes{gap:6px!important}.option-note{padding:8px;min-width:42px}.table-scroll:has(#table-mon-evaluation){background:white}#table-mon-evaluation thead{display:none}#table-mon-evaluation,#table-mon-evaluation tbody,#table-mon-evaluation tr,#table-mon-evaluation td{display:block;width:100%!important}#table-mon-evaluation td{padding:8px 0;border:0}#table-mon-evaluation tr{padding:16px 0;border-bottom:1px solid var(--couleur-bordure)}.page-login{display:block}.login-identite{min-height:0;padding:34px 24px}.login-identite h2{font-size:30px;max-width:22ch;margin:18px 0}.login-identite p{font-size:14px}.carte-login{padding:28px 24px;margin:0 auto}.panneau-apercu{padding:22px}.ligne-bas-tableau{gap:15px;flex-wrap:wrap}.lot-cartes{min-width:0}.contenu button,.contenu a,.contenu label{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{.sidebar-app,.barre-app,.bouton-bascule-sidebar,.widget-travail-flottant,.onglets-fiche,.outils-tableau,.apercu-ligne,.lien-evitement{display:none!important}.zone-contenu{width:100%}.contenu{padding:0;max-width:none}.fiche-panel[hidden]{display:block!important}.carte{break-inside:avoid;box-shadow:none}}
