/* Ambly — charte validée le 26/09/2026 : Roboto, bleu soin, vert d'eau, aucun écran sombre. */
@font-face{font-family:"Roboto";font-weight:400;font-style:normal;font-display:swap;src:url("../fonts/roboto-latin-400-mmDBXp4.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Roboto";font-weight:500;font-style:normal;font-display:swap;src:url("../fonts/roboto-latin-500-pdDltQf.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Roboto";font-weight:700;font-style:normal;font-display:swap;src:url("../fonts/roboto-latin-700-3tYcndW.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Roboto";font-weight:400;font-style:normal;font-display:swap;src:url("../fonts/roboto-latin-ext-400-150sEkj.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Roboto";font-weight:700;font-style:normal;font-display:swap;src:url("../fonts/roboto-latin-ext-700-_MLIGIH.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  color-scheme:light;
  --fond:#f4f8fa; --blanc:#fff; --texte:#1e2f3c; --texte2:#52667a; --doux:#e6eef3; --trait:#d5e1e8;
  --bleu:#1f63a8; --bleu-fonce:#174e86; --sarcelle:#127a76; --vert:#2f7d4f; --ambre:#9a6400; --rouge:#b3362b;
  --t-prevu:#dcebf7; --t-attente:#fff1d6; --t-partage:#d8efec; --t-bloq:#fbe3e0; --t-fini:#e3efe6;
  --agence:#1f63a8;
  --gut:clamp(16px,4vw,40px);
  --r:6px;
}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--fond);color:var(--texte);font:16px/1.55 "Roboto","Segoe UI",Arial,sans-serif;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}
a{color:var(--bleu)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--sarcelle);outline-offset:2px}
input[type=date]:focus,input[type=time]:focus,input[type=datetime-local]:focus{outline:3px solid var(--sarcelle);outline-offset:2px}
h1,h2,h3{line-height:1.2;margin:0;text-wrap:balance}
.w{max-width:1200px;margin:0 auto;padding-inline:var(--gut)}
.lbl{font-size:12.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--sarcelle);margin:0 0 10px}
.muted{color:var(--texte2)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tbl-wrap,.agenda,.planning .scroll{position:relative}

/* Boutons et formulaires */
.btn{display:inline-flex;align-items:center;gap:8px;font:inherit;font-weight:500;font-size:15px;padding:11px 18px;border:0;border-radius:var(--r);background:var(--bleu);color:#fff;text-decoration:none;cursor:pointer}
.btn:hover{background:var(--bleu-fonce)}
.btn.sec{background:var(--doux);color:var(--texte)}
.btn.sec:hover{background:#d8e4eb}
.field{display:grid;gap:6px;margin-bottom:16px}
.field label{font-weight:500;font-size:14.5px}
.field input,.field select{font:inherit;padding:10px 12px;border:1px solid #b9c9d4;border-radius:var(--r);background:#fff;color:var(--texte);width:100%}
.field .help{font-size:13px;color:var(--texte2)}
.field ul{margin:0;padding:0;list-style:none;color:var(--rouge);font-size:14px}
.flash{padding:12px 16px;border-radius:var(--r);margin-bottom:16px;font-weight:500}
.flash.ok{background:var(--t-fini);color:#1f5a38}
.flash.err{background:var(--t-bloq);color:#8e2a21}

/* ===== Espace agence ===== */
.app-top{background:var(--bleu);color:#fff}
.app-top .w{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;padding-block:12px}
.app-top .marque{font-weight:700;font-size:19px;color:#fff;text-decoration:none;letter-spacing:.01em}
.app-top .agence{font-size:14.5px;opacity:.92}
.app-top .qui{margin-left:auto;display:flex;align-items:center;gap:14px;font-size:14px}
.app-top .qui a{color:#fff;margin-left:10px}
.demo-ban{background:var(--t-attente);color:#6b4600;font-size:13.5px;text-align:left}
.demo-ban .w{padding-block:6px}
.app-nav{background:var(--blanc)}
.app-nav .w{display:flex;gap:4px;overflow-x:auto}
.app-nav a{padding:13px 14px;font-size:15px;color:var(--texte2);text-decoration:none;white-space:nowrap}
.app-nav a[aria-current="page"]{color:var(--bleu);font-weight:500;box-shadow:inset 0 -3px 0 var(--bleu)}
.app-main{padding-block:28px 64px}
.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;margin-bottom:20px}
.page-head h1{font-size:28px;font-weight:700}
.jour-nav{display:flex;align-items:center;gap:6px}
.jour-nav a{padding:8px 12px;border-radius:var(--r);background:var(--doux);color:var(--texte);text-decoration:none;font-size:14.5px}
.jour-nav a.auj{background:var(--bleu);color:#fff}

.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}
@media (max-width:760px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.kpi{background:var(--blanc);padding:14px 16px}
.kpi b{display:block;font-size:26px;font-weight:700;line-height:1.1}
.kpi span{font-size:14px;color:var(--texte2)}
.kpi.warn b{color:var(--ambre)}
.kpi.ko b{color:var(--rouge)}

.planning{background:var(--blanc)}
.planning .scroll{overflow-x:auto}
.pl{min-width:820px;padding:6px 16px 14px;position:relative}
.pl-row{display:grid;grid-template-columns:170px 1fr;align-items:center;min-height:52px}
.pl-row:nth-child(even){background:var(--fond)}
.pl-veh{font-size:13px;line-height:1.3;padding-right:12px}
.pl-veh b{display:block;font-size:14.5px}
.pl-veh i{font-style:normal;color:var(--texte2)}
.pl-veh em{font-style:normal;color:var(--rouge);font-weight:500}
.pl-track{position:relative;height:40px}
.pl-axis .pl-track{height:auto;display:grid;grid-template-columns:repeat(14,1fr)}
.pl-axis span{font-size:12px;color:var(--texte2);padding-block:8px}
.pl-c{position:absolute;top:3px;height:34px;display:flex;align-items:center;padding-inline:8px;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:4px;background:var(--t-prevu);color:var(--texte);text-decoration:none;min-width:6px}
.pl-c.en_cours{background:var(--bleu);color:#fff}
.pl-c.a_affecter{background:var(--t-attente);color:#6b4600;font-weight:500}
.pl-c.terminee{background:var(--t-fini);color:#1f5a38}
.pl-c.partagee{background:var(--t-partage);color:#0e5552}
.pl-row.bloque .pl-track{background:repeating-linear-gradient(135deg,transparent 0 8px,#fbe3e0 8px 16px)}
.pl-now{position:absolute;top:0;bottom:0;width:2px;background:var(--sarcelle);pointer-events:none}
.leg{display:flex;flex-wrap:wrap;gap:8px 18px;padding:0 16px 16px;font-size:13px;color:var(--texte2)}
.leg span{display:inline-flex;align-items:center;gap:6px}
.leg i{width:14px;height:14px;border-radius:3px;display:inline-block}

.tbl-wrap{background:var(--blanc);overflow-x:auto}
table.tbl{width:100%;border-collapse:collapse;font-size:14.5px;min-width:640px}
.tbl th{text-align:left;font-weight:500;font-size:13px;color:var(--texte2);padding:12px 14px;background:var(--doux)}
.tbl td{padding:12px 14px;vertical-align:top}
.tbl tr:nth-child(even) td{background:var(--fond)}
.etat-ko{color:var(--rouge);font-weight:500}
.etat-ok{color:var(--vert);font-weight:500}

.form-card{background:var(--blanc);padding:24px;max-width:640px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
@media (max-width:600px){.form-grid{grid-template-columns:minmax(0,1fr)}}
.form-actions{display:flex;gap:10px;margin-top:8px}

/* ===== Connexion ===== */
.login{min-height:100vh;display:grid;place-items:center;padding:24px var(--gut)}
.login .box{background:var(--blanc);width:100%;max-width:420px;padding:28px}
.login h1{font-size:24px;margin-bottom:4px}
.login .marque{display:block;height:6px;background:var(--agence);margin:-28px -28px 24px}
.login .demo{font-size:13.5px;background:var(--fond);padding:10px 12px;margin-top:16px;border-radius:var(--r)}

/* ===== Vitrine agence ===== */
.v-top{background:var(--agence);color:#fff}
.v-top .w{display:flex;flex-wrap:wrap;align-items:center;gap:10px 28px;padding-block:14px}
.v-marque{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none}
.v-marque img{height:34px;width:auto;background:#fff;border-radius:4px;padding:2px}
.v-marque b{font-size:20px}
.v-nav{display:flex;flex-wrap:wrap;gap:4px 20px;margin-right:auto}
.v-nav a,.v-tel{color:#fff;text-decoration:none;font-size:15px}
.v-nav a:hover{text-decoration:underline}
.v-tel{font-weight:700;font-size:17px}
.v-hero{padding-block:64px 48px}
.v-hero h1{font-size:clamp(30px,4.5vw,48px);max-width:20ch;margin-bottom:16px}
.v-hero p{max-width:60ch;font-size:18px;color:var(--texte2);margin:0 0 24px}
.v-actions{display:flex;flex-wrap:wrap;gap:10px}
.v-btn{background:var(--agence)}
.v-btn:hover{background:var(--agence);filter:brightness(.9)}
.v-bande{background:var(--blanc);padding-block:48px}
.v-bande h2,.v-pratique h2{font-size:clamp(22px,2.6vw,28px);margin-bottom:18px}
.v-services{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:24px}
@media (max-width:760px){.v-services{grid-template-columns:minmax(0,1fr)}}
.v-services ol{margin:0;padding:0;list-style:none;counter-reset:s;display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
@media (max-width:600px){.v-services ol{grid-template-columns:minmax(0,1fr)}}
.v-services li{counter-increment:s;padding:12px 0;display:grid;grid-template-columns:36px 1fr;font-size:17px;box-shadow:0 1px 0 var(--trait)}
.v-services li::before{content:counter(s,decimal-leading-zero);color:var(--agence);font-weight:700;font-size:14px;padding-top:2px}
.v-pratique{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-block:48px}
@media (max-width:760px){.v-pratique{grid-template-columns:minmax(0,1fr)}}
.v-pratique h2{font-size:19px;margin-bottom:8px}
.v-pratique p{margin:0;color:var(--texte2)}
.v-contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:32px;align-items:start}
@media (max-width:860px){.v-contact{grid-template-columns:minmax(0,1fr)}}
.v-contact .form-card{background:var(--fond);max-width:none}
.v-grand{font-size:30px;font-weight:700;color:var(--agence)}
.v-recrut{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:36px;padding-block:56px}
@media (max-width:860px){.v-recrut{grid-template-columns:minmax(0,1fr)}}
.v-recrut h1{font-size:clamp(28px,4vw,40px);margin-bottom:14px}
.v-recrut .form-card{max-width:none}
.v-foot{font-size:13.5px;color:var(--texte2);padding-block:28px 36px}
.v-foot .w{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:space-between}
.pot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.field textarea{font:inherit}

/* ===== Site de la plateforme ===== */
.p-top{background:var(--blanc);position:sticky;top:0;z-index:5;box-shadow:0 1px 0 var(--trait)}
.p-top .w{display:flex;flex-wrap:wrap;align-items:center;gap:10px 28px;padding-block:12px}
.p-marque{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:24px;color:#14212B;text-decoration:none;letter-spacing:-.01em}
.logo-picto{width:34px;height:34px;flex:none}.p-top .p-logo{display:block;height:40px;width:auto}.p-marque .logo-nom{color:#14212B}
.p-top nav{display:flex;gap:20px;margin-right:auto}
.p-top nav a{color:var(--texte2);text-decoration:none;font-size:15px}
.p-top nav a:hover{color:var(--bleu)}
@media (max-width:700px){.p-top nav{display:none}}
.p-open{padding-block:56px 48px}
.p-open-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:40px;align-items:center}
@media (max-width:960px){.p-open-grid{grid-template-columns:minmax(0,1fr)}}
.p-open h1{font-size:clamp(30px,4.2vw,46px);font-weight:700;margin-bottom:16px;max-width:18ch}
.p-lead{font-size:18px;color:var(--texte2);max-width:52ch;margin:0 0 24px}
.p-shot{margin:0;background:var(--blanc);overflow:hidden}
.p-shot-bar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;background:var(--bleu);color:#fff;padding:12px 16px;font-size:14px}
.p-pl{min-width:0;padding:6px 12px 10px}
.p-pl .pl-row{grid-template-columns:96px 1fr}
.p-shot figcaption{font-size:12.5px;color:var(--texte2);padding:0 16px 12px}
.p-sec{padding-block:56px}
.p-sec h2{font-size:clamp(24px,3vw,32px);font-weight:700;margin-bottom:24px;max-width:28ch}
.p-alt{background:var(--blanc)}
.p-tbl .tbl{min-width:560px}
.p-tbl .tbl tbody th{text-align:left;font-weight:500;padding:14px;width:28%;vertical-align:top}
.p-tbl .tbl tbody th{background:var(--blanc);font-size:15px;color:var(--texte)}
.p-tbl .tbl tbody tr:nth-child(even) th{background:var(--fond)}
.p-prix{font-size:20px;font-weight:700;white-space:nowrap}
.p-prix small{display:block;font-size:13px;font-weight:400;color:var(--texte2)}
.p-dates{list-style:none;margin:0;padding:0;display:grid;gap:0;max-width:880px}
.p-dates li{display:grid;grid-template-columns:190px 1fr;gap:20px;padding-block:16px}
.p-dates li+li{box-shadow:0 -1px 0 var(--trait)}
@media (max-width:600px){.p-dates li{grid-template-columns:1fr;gap:4px}}
.p-dates time{font-weight:700;color:var(--bleu)}
.p-note{margin:18px 0 0;max-width:70ch}
.p-foot{padding-block:28px 40px;font-size:14px;color:var(--texte2)}

/* ===== Lot 1 : composants communs ===== */
.app-nav a{padding:13px 12px}
.page-head .actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.muted-s{font-size:13px;color:var(--texte2)}
.apercu{white-space:pre-wrap;font:inherit;font-size:14px;line-height:1.55;margin:10px 0 0;color:var(--texte)}
.etat{display:inline-block;font-size:12.5px;font-weight:500;padding:3px 8px;border-radius:3px;white-space:nowrap}
.etat-en_attente{background:var(--t-attente);color:#6b4600}
.etat-validee,.etat-terminee{background:var(--t-fini);color:#1f5a38}
.etat-refusee,.etat-annulee{background:var(--doux);color:var(--texte2)}
.etat-prevue{background:var(--t-prevu);color:#174e86}
.etat-en_cours{background:var(--bleu);color:#fff}
.etat-a_affecter{background:var(--t-attente);color:#6b4600}
.alerte{background:var(--t-attente);color:#5e3f00;padding:12px 14px;border-radius:var(--r);font-size:14.5px}
.alerte.ko{background:var(--t-bloq);color:#8e2a21}

.filtres{background:var(--blanc);padding:14px 16px;display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end;margin-bottom:16px}
.filtres label{display:grid;gap:4px;font-size:13px;color:var(--texte2)}
.filtres input,.filtres select{font:inherit;font-size:14.5px;padding:8px 10px;border:1px solid #b9c9d4;border-radius:var(--r);background:#fff;color:var(--texte);min-width:0}
.pagination{display:flex;gap:6px;margin-top:14px;align-items:center;font-size:14.5px}
.pagination a,.pagination span{padding:6px 10px;border-radius:var(--r);background:var(--blanc);text-decoration:none;color:var(--texte)}
.pagination .on{background:var(--bleu);color:#fff}

.tbl tr.clic td{cursor:pointer}
.tbl td.num{font-variant-numeric:tabular-nums;white-space:nowrap}
.tbl .sous{display:block;font-size:12.5px;color:var(--texte2)}

.fiche{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px;align-items:start}
@media (max-width:900px){.fiche{grid-template-columns:minmax(0,1fr)}}
.bloc{background:var(--blanc);padding:20px 22px}
.bloc h2{font-size:17px;margin:0 0 14px}
.bloc+.bloc{margin-top:16px}
dl.kv{display:grid;grid-template-columns:minmax(120px,190px) 1fr;gap:8px 16px;margin:0;font-size:15px}
dl.kv dt{color:var(--texte2)}
dl.kv dd{margin:0}
.decision{display:grid;gap:10px}
.decision textarea,.decision input[type=text],.decision select{font:inherit;padding:9px 11px;border:1px solid #b9c9d4;border-radius:var(--r);width:100%}
.btn.ok{background:var(--vert)}
.btn.ok:hover{background:#256640}
.btn.ko{background:var(--rouge)}
.btn.ko:hover{background:#962c23}
.btn.sm{padding:7px 12px;font-size:13.5px}
.liste-courses{display:grid;gap:6px}
.liste-courses a{display:grid;grid-template-columns:110px 70px 1fr auto;gap:10px;align-items:center;padding:10px 12px;background:var(--fond);text-decoration:none;color:var(--texte);font-size:14.5px}
.liste-courses a:hover{background:var(--doux)}

fieldset.groupe{border:0;padding:0;margin:0 0 8px}
fieldset.groupe legend{font-size:12.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--sarcelle);margin-bottom:10px}
.field .choix{display:flex;flex-wrap:wrap;gap:6px 16px}
.field .choix label{font-weight:400;display:inline-flex;gap:6px;align-items:center}
.field input[type=checkbox]{width:auto}
.nouveau-patient{background:var(--fond);padding:14px 16px 2px;margin-bottom:16px}

/* ===== Tableau de bord ===== */
.tdb{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:20px;align-items:start}
@media (max-width:960px){.tdb{grid-template-columns:minmax(0,1fr)}}
.kpis.cinq{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:960px){.kpis.cinq{grid-template-columns:repeat(2,minmax(0,1fr))}}
a.kpi{text-decoration:none;color:inherit}
a.kpi:hover{background:#fbfdfe}
.chart svg{width:100%;height:auto;display:block}
.echeance{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;padding:10px 0;text-decoration:none;color:var(--texte);font-size:14.5px}
.echeance+.echeance{box-shadow:0 -1px 0 var(--trait)}
.echeance b{font-weight:500}
.niv{font-size:12px;font-weight:500;padding:2px 7px;border-radius:3px;align-self:start;margin-top:2px}
.niv-echu{background:var(--t-bloq);color:#8e2a21}
.niv-proche{background:var(--t-attente);color:#6b4600}
.niv-decision{background:var(--t-prevu);color:#174e86}

/* ===== Agenda ===== */
.agenda{background:var(--blanc);overflow-x:auto}
.agenda table{border-collapse:collapse;width:100%;min-width:760px;table-layout:fixed}
.agenda th{font-size:12.5px;font-weight:500;color:var(--texte2);padding:10px;text-align:left;background:var(--doux)}
.agenda td{vertical-align:top;height:112px;padding:6px;box-shadow:inset 0 0 0 1px var(--fond)}
.agenda td.hors{background:#fafcfd;color:#9aa9b5}
.agenda td.auj{background:#f1f7fc}
.agenda .num-j{font-size:13px;font-weight:500;margin-bottom:4px}
.agenda a.ev{display:block;font-size:12px;padding:3px 5px;margin-bottom:3px;border-radius:3px;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.agenda .plus{font-size:12px;color:var(--texte2)}

/* ===== Équipages ===== */
.eq-jour{background:var(--blanc);margin-bottom:12px;display:grid;grid-template-columns:170px 1fr;gap:0}
@media (max-width:760px){.eq-jour{grid-template-columns:minmax(0,1fr)}}
.eq-cote{padding:14px;background:var(--doux);display:grid;gap:8px;align-content:start}
.eq-cote b{font-size:15px}
.eq-cote.valide{background:var(--t-fini)}
.eq-cote form{display:contents}
.eq-corps{padding:12px 14px;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.eq-soc h3{font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--sarcelle);margin:0 0 6px;font-weight:500}
.eq-ligne{display:grid;grid-template-columns:62px 1fr;gap:8px;padding:6px 8px;font-size:13px;text-decoration:none;color:var(--texte);background:var(--fond)}
.eq-ligne+.eq-ligne{margin-top:3px}
.eq-ligne:hover{background:var(--t-prevu)}
.eq-ligne b{font-size:12.5px}
.eq-ligne .vide{color:#8e2a21}
.eq-ligne.bloque{background:repeating-linear-gradient(135deg,var(--fond) 0 8px,#fbe3e0 8px 16px)}
.eq-ligne .prete{color:var(--sarcelle);font-size:11.5px}
.vivier{display:grid;gap:4px}
.vivier label{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:9px 12px;background:var(--fond);font-size:14.5px;cursor:pointer}
.vivier label.indispo{opacity:.62;cursor:not-allowed}
.vivier label em{font-style:normal;font-size:12.5px;color:var(--rouge)}
.vivier label i{font-style:normal;font-size:12.5px;color:var(--ambre)}
.vivier .jours{font-size:12.5px;color:var(--texte2);white-space:nowrap}
.places{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:760px){.places{grid-template-columns:minmax(0,1fr)}}

@media print{
  .app-top,.app-nav,.demo-ban,.page-head .actions,.eq-cote form,.flash{display:none!important}
  body{background:#fff;font-size:11px}
  .eq-jour{break-inside:avoid;box-shadow:0 0 0 1px #ccc}
  .eq-ligne{background:#fff}
}

/* ===== Portail ===== */
.portail-top{background:var(--agence);color:#fff}
.portail-top .w{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;padding-block:14px}
.portail-top b{font-size:18px}
.portail-top a{color:#fff}
.portail-top a:first-of-type{margin-left:auto}
.pl-c:hover{filter:brightness(.96)}
.pl-c.alerte-pec{box-shadow:inset 0 -3px 0 #e0a100}
.sous{display:block;font-size:12.5px;color:var(--texte2)}
.form-grid{align-items:start}
.field{align-content:start}
.field.case{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.field.case label{font-weight:500}
.field.case .help{flex-basis:100%}

/* ===== Lots 2 à 5 : navigation à deux niveaux, registres ===== */
body.police-systeme{font-family:"Segoe UI",Arial,sans-serif}
.app-top{background:var(--agence)}
.app-top .marque{display:inline-flex;align-items:center;gap:10px}
.app-top .marque img{height:28px;width:auto;background:#fff;border-radius:4px;padding:2px}
.app-nav a[aria-current="true"]{color:var(--bleu);font-weight:500;box-shadow:inset 0 -3px 0 var(--bleu)}
.app-sous{background:var(--doux)}
.app-sous .w{display:flex;gap:2px;overflow-x:auto;padding-block:6px}
.app-sous a{padding:7px 12px;font-size:14px;color:var(--texte);text-decoration:none;white-space:nowrap;border-radius:var(--r)}
.app-sous a:hover{background:#d8e4eb}
.app-sous a[aria-current="page"]{background:var(--blanc);color:var(--bleu);font-weight:500}
.app-pied{font-size:12.5px;color:var(--texte2);padding-block:0 28px}
.intro{max-width:78ch;color:var(--texte2);margin:-8px 0 18px;font-size:15px}
.vide{background:var(--blanc);padding:28px 22px;color:var(--texte2)}
.form-grid .plein{grid-column:1/-1}
.field textarea{font:inherit;padding:10px 12px;border:1px solid #b9c9d4;border-radius:var(--r);background:#fff;color:var(--texte);width:100%}
.raccourcis{margin-top:22px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;max-width:640px}
.raccourcis .lbl{flex-basis:100%;margin:0 0 2px}
.raccourcis a{padding:8px 12px;background:var(--blanc);border-radius:var(--r);text-decoration:none;font-size:14.5px}
.raccourcis a:hover{background:var(--t-prevu)}
.liste-simple{margin:0;padding-left:18px;display:grid;gap:6px}
.document{background:var(--blanc);padding:32px 36px;max-width:900px}
.document header{margin-bottom:22px}
.document h2{font-size:22px}
.document h3{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--sarcelle);font-weight:500;margin:22px 0 10px}
.document-cols{display:grid;grid-template-columns:1fr 1fr;gap:24px}
@media (max-width:760px){.document-cols{grid-template-columns:minmax(0,1fr)}.document{padding:22px 18px}}
.document .tbl{min-width:0}
.signature{display:flex;justify-content:space-between;gap:24px;margin-top:40px;padding-top:56px;font-size:14px;color:var(--texte2)}
@media print{.app-sous,.app-pied,.filtres,.intro{display:none!important}.document{padding:0;max-width:none}.bloc{padding:0 0 14px;break-inside:avoid}}
.deux-cols{display:grid;grid-template-columns:minmax(0,640px) minmax(0,1fr);gap:24px;align-items:start}
@media (max-width:960px){.deux-cols{grid-template-columns:minmax(0,1fr)}}
.apercu{position:sticky;top:16px}
.apercu-bandeau{background:var(--agence);color:#fff;padding:16px 18px;display:flex;align-items:center;gap:12px;margin-bottom:10px}
.apercu-bandeau img,.logo-actuel img{height:32px;width:auto;background:#fff;border-radius:4px;padding:2px}
.fieldset-gap,fieldset.groupe+fieldset.groupe{margin-top:18px}
.en-ligne{display:inline-flex;gap:6px;margin:0}
.dns{background:var(--t-attente);padding:12px 14px;font-size:14px}
.dns p{margin:0 0 8px}
.dns code{font-size:13px;background:#fff;padding:1px 5px;border-radius:3px;word-break:break-all}
.ajout-domaine{margin-top:16px}
.ajout-domaine input{min-width:280px}
.messages{display:grid;gap:10px}
.message{background:var(--blanc);padding:16px 18px}
.message.traite{opacity:.7}
.message-tete{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline}
.message-tete span{font-size:13px;color:var(--sarcelle);font-weight:500}
.message-tete time{margin-left:auto;font-size:13px;color:var(--texte2)}
.message p{margin:8px 0 12px}
.message-pied{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;font-size:14.5px}
.field input[type=color]{height:46px;padding:4px;cursor:pointer}
.fil{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:8px}
.fil li{padding:10px 12px;background:var(--fond);max-width:88%}
.fil li.fil-regulation{justify-self:end;background:var(--t-prevu)}
.fil li.fil-alerte{background:var(--t-attente)}
.fil-tete{display:flex;gap:10px;align-items:baseline;font-size:13px}
.fil-tete span{color:#6b4600;font-weight:500}
.fil-tete time{margin-left:auto;color:var(--texte2)}
.fil p{margin:4px 0 0;font-size:14.5px}

/* ===== Application équipage (téléphone) ===== */
.eq-app{background:var(--fond);font-size:17px}
.eq-top{background:var(--agence);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;position:sticky;top:0;z-index:3}
.eq-marque{color:#fff;text-decoration:none;font-weight:700}
.eq-qui{font-size:15px}
.eq-reseau{background:var(--t-prevu);color:#174e86;padding:10px 16px;font-size:15px;font-weight:500}
.eq-reseau.alerte{background:var(--t-attente);color:#6b4600}
.eq-flash{margin:12px 16px 0}
.eq-main{padding:16px 16px 40px;max-width:640px;margin:0 auto}
.eq-tete{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}
.eq-tete h1{font-size:26px}
.eq-tete h1 span{color:var(--texte2);font-weight:400}
.eq-vehicule{margin:0 0 12px;font-size:15px;color:var(--texte2)}
.eq-vehicule b{color:var(--texte)}
.eq-liste{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.eq-course{display:grid;grid-template-columns:62px 1fr auto;gap:10px;align-items:start;padding:14px;background:var(--blanc);color:var(--texte);text-decoration:none;border-radius:var(--r)}
.eq-course time{font-size:20px;font-weight:700;color:var(--agence)}
.eq-course-corps{display:grid;gap:2px;font-size:14.5px;color:var(--texte2)}
.eq-course-corps b{font-size:17px;color:var(--texte)}
.eq-course-etat{font-size:13px;font-weight:500;padding:3px 8px;border-radius:3px;background:var(--t-prevu);color:#174e86}
.statut-en_cours .eq-course-etat{background:var(--agence);color:#fff}
.statut-terminee{opacity:.7}
.statut-terminee .eq-course-etat{background:var(--t-fini);color:#1f5a38}
.eq-retour{display:inline-block;margin-bottom:12px;font-size:15px}
.eq-mission-tete{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}
.eq-mission-tete time{font-size:30px;font-weight:700;color:var(--agence);line-height:1.1}
.eq-mission-tete h1{font-size:22px}
.eq-mission-tete p{margin:4px 0 0;color:var(--texte2);font-size:15px}
.eq-infos{list-style:none;margin:14px 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.eq-infos li{background:var(--blanc);padding:6px 10px;border-radius:var(--r);font-size:15px}
.eq-infos .alerte-li{background:var(--t-bloq);color:#8e2a21;font-weight:500}
.eq-trajet{background:var(--blanc);padding:14px 16px;margin:0 0 14px;display:grid;gap:4px}
.eq-trajet dt{font-size:13px;color:var(--texte2);margin-top:6px}
.eq-trajet dd{margin:0;font-weight:500}
.eq-trajet small{display:block;font-weight:400;color:#6b4600;background:var(--t-attente);padding:6px 8px;margin-top:6px;border-radius:4px}
.eq-etapes{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:4px}
.eq-etapes li{background:var(--doux);padding:8px 4px;text-align:center;font-size:12px;border-radius:4px;display:grid;gap:2px}
.eq-etapes li.fait{background:var(--t-fini);color:#1f5a38}
.eq-etapes li.suivante{background:var(--agence);color:#fff;font-weight:500}
.eq-etapes time{font-weight:700}
.eq-action,.eq-signature,.eq-incident,.eq-echanges{background:var(--blanc);padding:16px;margin-bottom:14px;display:grid;gap:12px}
.eq-action label,.eq-signature label{display:grid;gap:6px;font-size:15px;font-weight:500}
.eq-action input[type=number],.eq-action input[type=text],.eq-signature input,.eq-incident textarea{font:inherit;font-size:18px;padding:12px;border:1px solid #b9c9d4;border-radius:var(--r);width:100%}
.eq-action label.case{display:flex;align-items:center;gap:10px}
.eq-gros{font:inherit;font-size:20px;font-weight:700;padding:18px;border:0;border-radius:var(--r);background:var(--agence);color:#fff;cursor:pointer}
.eq-gros:disabled{opacity:.6}
.eq-signature canvas{width:100%;height:auto;aspect-ratio:600/220;background:var(--fond);border-radius:var(--r);touch-action:none;box-shadow:inset 0 0 0 1px var(--trait)}
.eq-signature .lbl{margin:0}
.eq-boutons{display:flex;gap:8px;justify-content:space-between}
.eq-signee{background:var(--blanc);padding:12px 16px;margin:0 0 14px}
.eq-signee img{max-width:100%;height:80px;object-fit:contain}
.eq-signee figcaption{font-size:14px;color:var(--texte2)}
.eq-incident summary{cursor:pointer;font-weight:500}
.eq-incident form{display:grid;gap:10px;margin-top:12px}
.eq-echanges p{margin:0;font-size:15px}
.eq-fini{background:var(--t-fini);color:#1f5a38;padding:14px 16px;font-weight:500}
.eq-attente{background:var(--t-attente);color:#6b4600;padding:12px 16px;margin:0 0 14px;font-weight:500}
.eq-pied{text-align:center;font-size:13px;color:var(--texte2);padding:0 16px 28px}
.suivi{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;align-items:start}
@media (max-width:960px){.suivi{grid-template-columns:minmax(0,1fr)}}
.carte{background:var(--blanc);min-height:460px;border-radius:var(--r)}
.carte.petite{min-height:300px}
table.tbl.suivi-tbl{min-width:0}
.chrono{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:4px}
.chrono li{background:var(--fond);padding:8px;font-size:12.5px;display:grid;gap:2px}
.chrono li.fait{background:var(--t-fini);color:#1f5a38}
.chrono time{font-weight:700;font-size:14px}
.signature-img{height:56px;background:var(--fond);border-radius:4px}
.bloc .carte{margin-top:14px}
.objectif{background:var(--blanc);padding:18px 20px;display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center;margin-bottom:18px}
@media (max-width:700px){.objectif{grid-template-columns:minmax(0,1fr)}}
.objectif b{font-size:34px;display:block;line-height:1}
.objectif span{font-size:14px;color:var(--texte2)}
.jauge{position:relative;height:14px;background:var(--doux);border-radius:7px;margin-top:18px}
.jauge i{position:absolute;inset:0 auto 0 0;background:var(--sarcelle);border-radius:7px}
.jauge em{position:absolute;top:-22px;transform:translateX(-50%);font-style:normal;font-size:12px;color:var(--texte2);white-space:nowrap}
.jauge em::after{content:"";position:absolute;left:50%;top:18px;width:2px;height:22px;background:var(--texte)}
.propositions{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;margin-bottom:24px}
.proposition{background:var(--blanc);padding:14px 16px;display:grid;gap:6px;align-content:start}
.proposition .lbl{margin:0 0 4px}
.proposition label,.proposition a{display:grid;grid-template-columns:auto 48px 1fr auto;gap:8px;align-items:start;padding:8px;background:var(--fond);font-size:14.5px;color:var(--texte);text-decoration:none}
.proposition a{grid-template-columns:minmax(0,1fr)}
.proposition time{font-weight:700}
.proposition .btn{justify-self:start;margin-top:6px}
.proposition.fait{background:var(--t-partage)}
.proposition.fait a{background:#fff}
.h2-section{font-size:19px;margin:8px 0 12px}
.barre-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.btn:disabled{opacity:.5;cursor:not-allowed}
.controle{display:block;font-size:12.5px;line-height:1.35;padding:3px 0}
.controle.bloquant{color:#8e2a21;font-weight:500}
.controle.alerte{color:#6b4600}
.facture-doc{max-width:none}
.facture-tete{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px}
.facture-tete p{margin:6px 0 0;font-size:14px;color:var(--texte2)}
.facture-dest{background:var(--fond);padding:14px 16px;min-width:240px;font-size:14.5px}
.facture-dest .lbl{margin-bottom:4px}
.facture-refs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:22px 0}
.facture-refs div{background:var(--fond);padding:8px 10px}
.facture-refs dt{font-size:12px;color:var(--texte2)}
.facture-refs dd{margin:0;font-weight:500}
.facture-doc tfoot th{text-align:left;font-size:15px;background:var(--doux);padding:12px 14px}
.facture-doc tfoot .num{text-align:right}
.facture-doc td.num,.facture-doc th.num{text-align:right}
.facture-pied{margin-top:22px;font-size:13px;color:var(--texte2)}
.relance{background:var(--t-bloq);color:#8e2a21;padding:10px 12px;font-weight:500}
.gros-chiffre{margin:0;font-size:17px}
@media print{.fiche>aside{display:none}.fiche{display:block}}
.exports{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.exports li{background:var(--blanc);padding:18px 20px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}
.exports h2{font-size:17px;margin-bottom:4px}
.exports p{margin:0;color:var(--texte2);font-size:14.5px;max-width:70ch}
.tbl.temps{min-width:1100px;font-size:13.5px}
.tbl.temps td.travaille{background:var(--t-prevu)!important}
.tbl.temps td{padding:10px 8px}
.tbl th.num{white-space:nowrap}
.tbl.temps{min-width:980px}
.tbl.temps td{height:auto}
.tbl.temps tr.alertes-ligne td{background:#fff8ea!important;padding-top:0}
.tbl.temps .alertes-ligne .controle{display:inline-block;margin-right:18px}
.tbl.temps tr:nth-child(even) td{background:transparent}
.tbl.temps tbody tr{box-shadow:0 1px 0 var(--trait)}
.tbl tr.ancienne td{opacity:.6}
.decision input[type=file],.decision input[type=date]{font:inherit;padding:8px;border:1px solid #b9c9d4;border-radius:var(--r);background:#fff}
.pipeline{display:grid;grid-template-columns:repeat(5,minmax(200px,1fr));gap:10px;overflow-x:auto;margin:16px 0 20px}
.etape-col{background:var(--doux);padding:12px;display:grid;gap:8px;align-content:start;min-height:160px}
.etape-col h2{font-size:14px;font-weight:500;display:flex;justify-content:space-between}
.etape-col h2 span{color:var(--texte2)}
.etape-retenue{background:var(--t-partage)}
.etape-integree{background:var(--t-fini)}
.candidat{background:var(--blanc);padding:10px 12px;display:grid;gap:3px;font-size:14px}
.candidat summary{cursor:pointer;font-size:13px;color:var(--bleu);margin-top:4px}
.candidat .decision{margin-top:8px;gap:6px}
.bloc.ajout summary{cursor:pointer}
.bloc.ajout form{margin-top:14px}
.a-traiter{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:4px}
.a-traiter a{display:block;padding:8px 10px;background:var(--fond);text-decoration:none;color:var(--texte);font-size:14.5px}
.a-traiter b{color:var(--bleu);margin-right:4px}
.liste-messages{display:grid;gap:4px}
.liste-messages a{display:grid;gap:2px;padding:8px 10px;text-decoration:none;color:var(--texte);font-size:14px;box-shadow:0 1px 0 var(--trait)}
.liste-messages a.alerte-msg{background:var(--t-attente)}
.tbl.indic tbody th{text-align:left;font-weight:500;padding:10px 14px;background:transparent;font-size:14px;color:var(--texte)}
.tbl.indic td.total{font-weight:700;background:var(--t-prevu)!important}
.tbl td.num,.tbl th.num{text-align:right}
.facture-lignes{min-width:0}
.facture-lignes tfoot th{text-align:left;background:var(--doux);padding:12px 14px}
.facture-lignes tfoot th.num{text-align:right}
dl.jauges{margin:0;display:grid;gap:14px}
dl.jauges dt{font-size:13px;color:var(--texte2)}
dl.jauges dd{margin:2px 0 0;display:grid;gap:4px}
dl.jauges dd b{font-size:18px}
dl.jauges dd span{font-size:13px;color:var(--texte2)}
.jauge.petite{height:8px;margin-top:2px}
.formules{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:6px}
.formules li{background:var(--fond);padding:10px 12px;display:grid;gap:2px}
.formules li.actuelle{background:var(--t-prevu)}
.formules span{font-size:14px;color:var(--texte2)}
.formules em{font-style:normal;font-size:12.5px;font-weight:500;color:var(--bleu)}
.connecteurs{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.connecteurs li{background:var(--blanc);padding:18px 20px;display:grid;grid-template-columns:1fr 200px;gap:20px;align-items:start}
@media (max-width:700px){.connecteurs li{grid-template-columns:minmax(0,1fr)}}
.connecteurs h2{font-size:17px}
.connecteurs p{margin:4px 0 0;font-size:14.5px;max-width:72ch}
.connecteur-etat{display:grid;gap:8px;justify-items:start;font-size:14px}
.connecteur-etat form{display:grid;gap:8px;justify-items:start}
.connecteurs .etat-export .connecteur-etat b{color:var(--vert)}
.connecteurs .etat-attente .connecteur-etat b{color:var(--ambre)}
.plan{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:8px}
.plan li{background:var(--blanc);padding:14px 16px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:16px;align-items:start}
@media (max-width:860px){.plan li{grid-template-columns:minmax(0,1fr)}}
.plan li.sans{background:#fff8f7}
.plan-course{display:grid;grid-template-columns:52px 1fr;gap:10px}
.plan-course time{font-weight:700;font-size:17px;color:var(--bleu)}
.plan-prop{display:grid;grid-template-columns:auto 1fr;gap:10px;cursor:pointer;background:var(--fond);padding:10px 12px}
.note{font-size:12.5px;font-weight:500;background:var(--t-prevu);color:#174e86;padding:2px 6px;border-radius:3px;margin-left:6px}
.aide{display:grid;gap:6px;margin-bottom:12px}
.aide li{list-style:none}
.jour-nav a.optim{background:var(--sarcelle);color:#fff;margin-right:8px}
.referentiels{display:grid;grid-template-columns:240px minmax(0,1fr);gap:18px;align-items:start}
@media (max-width:760px){.referentiels{grid-template-columns:minmax(0,1fr)}}
.familles{display:grid;gap:2px;background:var(--blanc);padding:8px}
.familles a{padding:9px 12px;text-decoration:none;color:var(--texte);font-size:14.5px;border-radius:var(--r)}
.familles a[aria-current="page"]{background:var(--t-prevu);color:var(--bleu);font-weight:500}
.valeurs{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:4px}
.valeurs li{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;background:var(--fond);padding:6px 10px}
.valeurs li.inactive{opacity:.55}
.valeurs input[type=text],.ajout-valeur input{font:inherit;padding:7px 10px;border:1px solid #b9c9d4;border-radius:var(--r);background:#fff;width:100%}
.valeurs code{font-size:12px;color:var(--texte2)}
.ajout-valeur{display:flex;gap:8px;margin-top:12px}
.bascules{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:14px}
.bascules nav{display:flex;background:var(--blanc);padding:4px;border-radius:var(--r)}
.bascules a{padding:7px 14px;text-decoration:none;color:var(--texte);font-size:14.5px;border-radius:var(--r)}
.bascules a[aria-current="page"]{background:var(--bleu);color:#fff}
.kanban{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media (max-width:760px){.kanban{grid-template-columns:minmax(0,1fr)}}
.kanban-col{background:var(--doux);padding:12px;min-height:240px;display:grid;gap:8px;align-content:start}
.kanban-col.survol{background:var(--t-prevu)}
.kanban-col h2{font-size:14px;font-weight:500;display:flex;justify-content:space-between}
.carte-tache{background:var(--blanc);padding:10px 12px;display:grid;gap:3px;cursor:grab}
.carte-tache.retard{background:var(--t-bloq)}
.carte-tache a{text-decoration:none;color:var(--texte)}
.eq-absence{background:var(--blanc);padding:12px 14px;margin:0 0 6px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;font-size:15px}
.eq-action .form-grid{grid-template-columns:1fr 1fr}
.echeance-ligne{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}
.echeance-ligne+.echeance-ligne{box-shadow:0 -1px 0 var(--trait)}
.echeance-ligne .echeance{box-shadow:none}
.resume-jour{background:var(--blanc);padding:16px 20px;margin:0 0 14px;font-size:16px;line-height:1.6;max-width:none}
.resume-jour .lbl{display:block;margin-bottom:4px}
.pl-c[draggable]{cursor:grab}.pl-c.glisse{opacity:.45}
.pl-row.survol .pl-track{background:#e6f2f1}
#pl-retour{margin:10px 16px 0}
/* ===== Tableau de garde ===== */
.garde-bilan{margin:-6px 0 14px}
.gardes{display:grid;grid-template-columns:88px repeat(7,minmax(118px,1fr));gap:3px;overflow-x:auto}
.g-jour{padding:8px 10px 6px;font-size:13px;color:var(--texte2)}.g-jour b{color:var(--texte);font-weight:500}.g-jour.we b{color:var(--sarcelle)}
.g-creneau{padding:12px 10px;font-weight:500;font-size:14px;display:flex;flex-direction:column;gap:2px}.g-creneau i{font-style:normal;font-size:11.5px;opacity:.75}
.g-creneau.nuit,.g-case.nuit{background:#17344f;color:#e8f0f6}
.g-case{background:var(--blanc);min-height:118px;padding:6px;display:flex;flex-direction:column;gap:5px}
.g-garde{display:flex;flex-direction:column;gap:1px;padding:7px 8px;background:#eaf3f2;color:inherit;text-decoration:none;font-size:12.5px;line-height:1.35;border-radius:3px}
.g-case.nuit .g-garde{background:#244a6c}
.g-garde:hover{filter:brightness(.96)}
.g-sect{font-size:11px;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.g-veh{font-weight:500;font-size:13.5px}
.g-garde.manque{background:#fff1d6;color:#5a3d00}.g-garde.conflit{background:#fbe3e0;color:#7a1d12}
.g-note{font-style:italic;opacity:.8}
.g-ajout{margin-top:auto;font-size:12px;color:var(--texte2);text-decoration:none;padding:2px 4px}.g-case.nuit .g-ajout{color:#9fb7cc}.g-ajout:hover{text-decoration:underline}
@media print{.gardes{grid-template-columns:70px repeat(7,1fr);font-size:10px}.g-ajout{display:none}.g-case{min-height:70px}.g-creneau.nuit,.g-case.nuit{background:#e8eef3!important;color:#000}.g-case.nuit .g-garde{background:#fff;box-shadow:0 0 0 1px #aaa}}
/* ===== Reprise de données ===== */
.import-etapes{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}
@media (max-width:900px){.import-etapes{grid-template-columns:minmax(0,1fr)}}
.import-choix{background:var(--blanc);padding:22px 24px}
.choix-types{display:flex;flex-wrap:wrap;gap:8px 22px}.choix-types label{display:flex;gap:6px;align-items:center}
.import-colonnes>div{padding:10px 0 12px;opacity:.6}.import-colonnes>div.actif{opacity:1}
.import-colonnes p{margin:4px 0 6px;line-height:1.9}.import-colonnes code{background:var(--doux);padding:1px 6px;font-size:12.5px}
.import-rapport{margin-top:30px}.import-rapport h2{font-size:19px;font-weight:500;margin:0 0 10px}
.import-chiffres{display:flex;gap:28px;margin:0 0 14px}.import-chiffres b{font-size:26px;font-weight:500;display:block;line-height:1.1}
.import-rapport form{margin:0 0 16px}
.photos-mission{display:flex;flex-direction:column;gap:3px}
.eq-photo form{display:grid;gap:12px}.eq-photo .choix{display:flex;gap:22px}.eq-photo .choix label{display:flex;gap:8px;align-items:center;font-size:17px}
.eq-photo input[type=file]{font-size:16px}
.sms-choix{display:grid;gap:8px;justify-items:start}.sms-choix label{display:flex;gap:8px;align-items:center}
.sms-choix input[type=number]{width:70px;padding:4px 6px;font:inherit}
.historique-patient{display:flex;flex-direction:column;gap:2px}
.historique-patient a{display:grid;grid-template-columns:130px 1fr;gap:2px 12px;padding:10px 12px;background:var(--blanc);color:inherit;text-decoration:none;font-size:14px}
.historique-patient a:hover{background:#eaf3f2}.historique-patient time{color:var(--texte2);font-variant-numeric:tabular-nums}
.historique-patient i{grid-column:2;font-style:normal;font-size:12.5px;color:var(--sarcelle)}
/* Cibles tactiles (audit mobile) */
@media (max-width:700px){
  .app-top .qui a{display:inline-block;padding:10px 4px}
  .g-ajout{padding:10px 4px}
  .deux-cols,.import-etapes{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:700px){.v-nav a{display:inline-block;padding:10px 2px}}
/* ===== Accueil plateforme : sections éditoriales ===== */
.p-journee{list-style:none;margin:0;padding:0;max-width:980px}
.p-journee li{display:grid;grid-template-columns:150px 170px minmax(0,1fr);gap:8px 24px;padding-block:20px;align-items:baseline}
.p-journee li+li{box-shadow:0 -1px 0 var(--trait)}
.p-journee time{font-size:30px;font-weight:300;color:var(--bleu);letter-spacing:-.01em}
.p-role{margin:0;font-size:12.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--sarcelle)}
.p-journee li>p:last-child{margin:0;max-width:62ch}
@media (max-width:760px){.p-journee li{grid-template-columns:1fr;gap:2px}.p-journee time{font-size:24px}}
.p-deux{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:24px 56px;align-items:start}
@media (max-width:900px){.p-deux{grid-template-columns:minmax(0,1fr)}}
.p-garanties{margin:0;display:grid;grid-template-columns:190px minmax(0,1fr);gap:0}
.p-garanties dt{padding-right:24px}
.p-garanties dt,.p-garanties dd{padding-block:14px;margin:0}
.p-garanties dt{font-weight:500}
.p-garanties dd{color:var(--texte2)}
.p-garanties dt:not(:first-of-type),.p-garanties dt:not(:first-of-type)+dd{box-shadow:0 -1px 0 var(--trait)}
@media (max-width:560px){.p-garanties{grid-template-columns:minmax(0,1fr)}.p-garanties dt{padding-bottom:0}.p-garanties dd{padding-top:4px;box-shadow:none!important}}
.p-etapes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 40px}
@media (max-width:860px){.p-etapes{grid-template-columns:minmax(0,1fr)}}
.p-etapes b{display:block;font-size:56px;line-height:1;font-weight:300;color:var(--sarcelle);margin-bottom:10px}
.p-etapes h3{font-size:18px;font-weight:500;margin:0 0 6px}
.p-etapes p{margin:0;color:var(--texte2)}
.p-fin{background:var(--bleu-fonce);color:#fff;padding-block:56px}
.p-fin h2{font-size:clamp(24px,3vw,32px);font-weight:700;margin:0 0 12px;max-width:22ch}
.p-fin p{color:#d6e4f0;max-width:52ch}
.p-fin .btn.inverse{background:#fff;color:var(--bleu-fonce)}
.p-comptes{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 20px;font-size:15px}
.p-comptes dt,.p-comptes dd{margin:0;padding-block:10px;box-shadow:0 1px 0 rgba(255,255,255,.18)}
.p-comptes dt{font-weight:500;font-size:15px}
.p-comptes dd{color:#d6e4f0}
@media (max-width:560px){.p-comptes{grid-template-columns:minmax(0,1fr)}.p-comptes dt{box-shadow:none;padding-bottom:0}}
@media (max-width:640px){
  .p-tbl{overflow:visible;background:none}.p-tbl .tbl{min-width:0}
  .p-tbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .p-tbl .tbl,.p-tbl tbody,.p-tbl tr,.p-tbl th,.p-tbl td{display:block;width:auto!important}
  .p-tbl tr{background:var(--blanc);padding:4px 0;margin-bottom:2px}
  .p-tbl .tbl tbody th{padding:12px 14px 2px;background:none!important}
  .p-tbl td{padding:4px 14px 12px;background:none!important}
  .p-tbl tr{background:var(--blanc)!important}
  .p-tbl td.p-prix{padding-bottom:2px}
}
@media (max-width:600px){
  .liste-courses a{grid-template-columns:auto auto minmax(0,1fr);grid-template-areas:none}
  .liste-courses a .etat{grid-column:1/-1;justify-self:start}
  .jour-nav{flex-wrap:wrap}
  .facture-lignes td:first-child{white-space:normal}
}
@media (max-width:700px){main a[href^="tel:"],main a[href^="mailto:"]{display:inline-block;padding-block:8px}}
/* ===== Accueil plateforme v2 : ouverture produit, comparaison, rangs de fonctions ===== */
.h-open{padding-block:64px 88px;background:var(--fond);overflow:hidden}
.h-open-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:56px;align-items:center}
.h-open h1{font-size:clamp(32px,4.4vw,52px);font-weight:700;line-height:1.08;letter-spacing:-.015em;margin:0 0 18px;max-width:16ch}
.h-mention{margin:16px 0 0;font-size:13.5px;color:var(--texte2)}
.h-scene{position:relative;margin:0;padding:28px 0 28px 28px}
.h-scene::before{content:"";position:absolute;inset:0 -40vw 0 0;background:var(--bleu);z-index:0}
.h-scene figcaption{position:relative;z-index:1;color:#cfe0ef;font-size:12px;margin-top:10px}
.h-fenetre{position:relative;z-index:1;background:var(--blanc);box-shadow:0 30px 60px -20px rgba(15,40,70,.45)}
.h-barre{background:#e9eff3;padding:8px 14px;font-size:12px;color:var(--texte2)}
.h-barre span{display:inline-block;background:var(--blanc);padding:3px 10px;border-radius:4px}
.h-tete{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 14px;padding:14px 16px 10px;font-size:14px}
.h-tete span{color:var(--texte2)}
.h-pl{padding:0 16px 16px}.h-pl .pl-veh{width:118px}.h-pl .pl-row{min-height:46px}
.h-pl .pl-c{font-size:12px}
.h-flot{position:absolute;z-index:2;background:var(--blanc);padding:12px 16px;box-shadow:0 18px 40px -12px rgba(15,40,70,.35);max-width:260px}
.h-flot p{margin:0}
.h-flot-lbl{font-size:11.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--sarcelle);margin-bottom:4px!important}
.h-flot-sous{font-size:13px;color:var(--texte2);line-height:1.45}
.h-note{font-weight:700;color:var(--sarcelle);margin-left:6px}
.h-flot-a{top:-6px;right:24px}
.h-flot-b{bottom:-30px;left:-36px;max-width:300px}
.h-alerte{color:var(--rouge);font-weight:500}
.h-chiffre{font-size:28px;font-weight:700;color:var(--bleu);line-height:1.1}
@media (max-width:980px){
  .h-open-grid{grid-template-columns:minmax(0,1fr)}
  .h-scene{padding:20px 0 20px 16px}
  .h-flot{position:relative;inset:auto;max-width:none;margin:12px 0 0}
  .h-flot-a,.h-flot-b{left:auto;right:auto;top:auto;bottom:auto}
}
/* Comparaison */
.h-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:0}
.h-duo p{margin:0;padding:16px 22px}
.h-duo-t{font-size:12.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--texte2);background:var(--fond)}
.h-duo-e{color:#fff;background:var(--sarcelle)}
.h-avant{background:var(--fond);color:var(--texte2);box-shadow:0 1px 0 var(--trait) inset}
.h-apres{background:#eaf4f3;color:var(--texte);font-weight:500;box-shadow:0 1px 0 #cfe4e2 inset}
.h-duo .h-avant:nth-of-type(3),.h-duo .h-apres:nth-of-type(4){box-shadow:none}
@media (max-width:700px){
  .h-duo{grid-template-columns:minmax(0,1fr)}
  .h-duo-t{display:none}
  .h-avant{padding-bottom:6px!important;box-shadow:0 1px 0 var(--trait) inset}
  .h-avant::before{content:"Aujourd'hui";display:block;font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}
  .h-apres::before{content:"Avec Ambly";display:block;font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--sarcelle);margin-bottom:4px}
  .h-apres{margin-bottom:12px!important;box-shadow:none}
}
/* Rangs de fonctions */
.h-rangs{display:grid;gap:88px;margin-top:40px}
.h-rang{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:center}
.h-rang-inverse .h-rang-texte{order:2}
.h-rang h3{font-size:clamp(22px,2.4vw,28px);font-weight:700;line-height:1.2;margin:6px 0 12px}
.h-rang-texte>p:not(.p-role){color:var(--texte2);margin:0 0 16px;max-width:48ch}
.h-liste{list-style:none;margin:0;padding:0;max-width:48ch}
.h-liste li{padding:9px 0;box-shadow:0 -1px 0 var(--trait);font-size:15px}
.h-visuel{position:relative;background:#e3edf3;padding:28px}
.h-visuel>img{display:block;width:100%;height:auto;box-shadow:0 22px 44px -18px rgba(15,40,70,.35)}
.h-visuel-tel{display:flex;justify-content:center;background:#e3efee}
.h-tel{width:min(270px,70%);padding:10px;background:#1c2a36;border-radius:30px;box-shadow:0 26px 50px -16px rgba(15,40,70,.5)}
.h-tel img,.h-tel video{display:block;width:100%;height:auto;border-radius:22px;background:#f4f8fa}
.h-flot-c{right:-18px;bottom:-22px}
.h-flot-d{right:-18px;top:-22px}
@media (max-width:900px){
  .h-rang{grid-template-columns:minmax(0,1fr);gap:24px}
  .h-rang-inverse .h-rang-texte{order:0}
  .h-rangs{gap:56px}
  .h-visuel{padding:16px}
  .h-flot-c,.h-flot-d{position:relative;left:auto;right:auto;bottom:auto;margin-top:12px;max-width:none}
}
.h-fenetre{overflow:hidden}.h-pl.pl{min-width:0}
.h-flot-a{top:-22px;right:-14px}
@media (max-width:900px){.h-visuel-tel{flex-direction:column;align-items:center}.h-visuel-tel .h-flot{align-self:stretch}}
@media (max-width:560px){.h-pl .pl-veh{width:92px}.h-pl .pl-c{font-size:11px;padding-inline:5px}.h-tete span{font-size:12.5px}}
/* ===== Application équipage : mes heures ===== */
.hr-mois{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin:0 0 14px;font-size:15px}
.hr-mois b{font-size:17px;font-weight:500}
.hr-mois a{color:var(--texte2);text-decoration:none;padding:10px 0}
.hr-mois a:last-child{text-align:right}
.hr-total{background:var(--blanc);padding:18px 18px 16px;margin:0 0 12px}
.hr-total .lbl{margin:0}
.hr-chiffre{font-size:44px;font-weight:500;line-height:1.1;margin:6px 0 4px;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.hr-detail{margin:0 0 14px;color:var(--texte2);font-size:14.5px}
.hr-variables{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding-top:12px;box-shadow:0 -1px 0 var(--trait)}
.hr-variables dt{font-size:12.5px;color:var(--texte2)}
.hr-variables dd{margin:2px 0 0;font-size:22px;font-weight:500;font-variant-numeric:tabular-nums}
.hr-semaine{margin:18px 0 0}
.hr-semaine h2{font-size:14px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--texte2);display:flex;justify-content:space-between;margin:0 0 6px}
.hr-semaine h2 span{letter-spacing:0;text-transform:none;font-size:16px;color:var(--texte)}
.hr-semaine h2 span.etat-ko{color:var(--rouge,#b3261e)}
.hr-ligne{background:var(--blanc);padding:10px 14px;margin:0 0 3px;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:15px}
.hr-ligne small{color:var(--texte2);font-size:13px}
.hr-ligne em{font-style:normal;color:var(--sarcelle)}
.hr-ligne b{font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}
.hr-note{color:var(--texte2);font-size:13.5px;margin:18px 0 0}
.hr-semaine h2 small{font-size:13px;color:var(--texte2);font-weight:400}
.hr-ligne.prevue{background:var(--doux);color:var(--texte2)}
.hr-ligne.prevue b{font-weight:400;font-size:13px}
/* ===== Accueil : vidéo de démonstration ===== */
.h-video{display:block;width:100%;aspect-ratio:16/9;background:#14212B;border-radius:12px;box-shadow:0 30px 70px rgba(20,33,43,.14)}
.h-video-note{margin-top:12px;font-size:14px;color:var(--texte2)}

/* ── Fond « trajets » de l'accueil (27/09/2026) ─────────────────────────── */
.h-open,.p-fin{position:relative;isolation:isolate}
.tr{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.tr .tr-routes use{fill:none;stroke:var(--doux);stroke-width:12;stroke-linecap:round}
.tr .tr-axes use{fill:none;stroke:#c9d8e2;stroke-width:1.6;stroke-dasharray:1 9;stroke-linecap:round}
.tr-lieu circle{fill:var(--blanc);stroke:var(--trait);stroke-width:1.5}
.tr-g,.tr-g circle{fill:none;stroke:var(--bleu);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.tr-lbl{font:500 11px/1 Roboto,system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;fill:var(--texte2)}
.tr-hopital .tr-onde{fill:none;stroke:var(--bleu);stroke-width:1.5;transform-origin:0 0;transform-box:fill-box;animation:tr-onde 3.2s ease-out infinite}
@keyframes tr-onde{from{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(2.4)}}
.tr-fin .tr-routes use{stroke:rgba(255,255,255,.07)}
.tr-fin .tr-axes use{stroke:rgba(255,255,255,.28)}
.tr-fin .tr-hopital .tr-onde{stroke:#fff}
.h-open .w,.p-fin .w{position:relative}
@media (max-width:900px){.tr-lbl{display:none}}
@media (max-width:700px){.tr-ouverture{display:none}}
@media (prefers-reduced-motion:reduce){.tr-hopital .tr-onde{animation:none;opacity:0}}
.p-fondateur{display:grid;grid-template-columns:max-content minmax(0,60ch);gap:6px 28px;align-items:baseline;margin-top:28px;padding:20px 24px;background:var(--t-partage)}
.p-fondateur .lbl{margin:0;color:var(--sarcelle)}
.p-fondateur p{margin:0}
@media (max-width:700px){.p-fondateur{grid-template-columns:1fr}}
/* Démonstration : changer de poste */
.demo-postes{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px}
.demo-postes form{display:inline;margin:0}
.demo-postes button,.demo-postes a,.demo-postes span[aria-current]{font:inherit;color:#6b4600;background:none;border:0;padding:4px 0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.demo-postes [aria-current]{font-weight:700;text-decoration:none}
.demo-tel #qr{width:240px;max-width:100%;margin:18px 0}
.demo-tel #qr svg{display:block;width:100%;height:auto}
/* Photo dans l'application équipage : bouton lisible à la place du champ fichier natif */
.eq-fichier{position:relative;display:block;margin:10px 0;padding:14px 16px;background:var(--doux);color:var(--texte);font-weight:500;text-align:left;border-radius:var(--r);cursor:pointer}
.eq-fichier input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}
.eq-fichier:focus-within{outline:2px solid var(--bleu);outline-offset:2px}
.portail-sec{margin:28px 0 10px}.portail-sec:first-of-type{margin-top:6px}
.lecture-seule :disabled{opacity:1;color:inherit;background:transparent;cursor:default}

/* ===== Site Ambly : pages publiques (métiers, tarifs, questions, ressources) ===== */
.p-top .p-nav{display:flex;flex-wrap:wrap;gap:6px 20px;margin-right:auto}
.p-nav a,.p-menu nav a{color:var(--texte2);text-decoration:none;font-size:15px}
.p-nav a:hover,.p-nav a[aria-current],.p-menu nav a[aria-current]{color:var(--bleu)}
.p-nav a[aria-current]{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
.p-menu{display:none}
.p-menu summary{list-style:none;cursor:pointer;font-weight:500;color:var(--texte);padding:8px 0;display:inline-block}
.p-menu summary::-webkit-details-marker{display:none}
.p-menu summary::after{content:" +";color:var(--sarcelle)}.p-menu[open] summary::after{content:" −"}
.p-menu nav{display:flex;flex-direction:column;padding-bottom:8px}
.p-menu nav a{padding:11px 0;font-size:16px;box-shadow:0 1px 0 var(--trait)}
@media (max-width:1000px){
  .p-top .p-nav{display:none}.p-top .w{gap:8px 16px}
  .p-menu{display:block;order:3;flex-basis:100%}
}
@media (max-width:420px){.p-top .btn{font-size:13.5px;padding:8px 12px}}
.p-foot-grille{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:28px 40px;padding-top:12px}
.p-foot-grille p{margin:10px 0 0;max-width:36ch}
.p-foot-grille nav{display:flex;flex-direction:column;gap:8px}
.p-foot-grille nav a{color:var(--texte2);text-decoration:none}.p-foot-grille nav a:hover{color:var(--bleu)}
.p-marque-pied{font-size:20px}
@media (max-width:860px){.p-foot-grille{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.p-foot-grille>div:first-child{grid-column:1/-1}}

/* Ouverture d'une page intérieure : titre à gauche, colonne de repères à droite */
.s-ouv{padding-block:56px 40px;background:var(--blanc)}
.s-ouv-grille{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:32px 64px;align-items:end}
.s-ouv h1{font-size:clamp(30px,4.2vw,48px);font-weight:700;margin:0 0 16px;max-width:20ch;letter-spacing:-.01em}
.s-reperes{margin:0;display:grid;gap:0}
.s-reperes div{padding-block:14px}.s-reperes div+div{box-shadow:0 -1px 0 var(--trait)}
.s-reperes dt{font-size:30px;font-weight:300;color:var(--bleu);line-height:1.1}
.s-reperes dd{margin:4px 0 0;color:var(--texte2);font-size:14.5px}
@media (max-width:860px){.s-ouv-grille{grid-template-columns:minmax(0,1fr)}}
.s-fil{font-size:13.5px;color:var(--texte2);margin:0 0 18px}.s-fil a{color:var(--texte2)}

/* Calculateur : saisie sur fond sombre, résultat en grands chiffres */
.s-calc{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:0;background:var(--blanc)}
.s-calc-saisie{background:var(--bleu-fonce);color:#fff;padding:32px}
.s-calc-saisie label{display:block;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:#bcd4ea;margin:0 0 8px}
.s-calc-saisie input{width:100%;font:inherit;font-size:28px;font-weight:300;padding:10px 12px;border:0;border-radius:var(--r);background:rgba(255,255,255,.1);color:#fff;margin-bottom:22px}
.s-calc-saisie input:focus-visible{outline:3px solid #7fc8c2}
.s-calc-saisie small{display:block;color:#bcd4ea;font-size:13px;margin-top:-14px;margin-bottom:18px}
.s-calc-res{padding:32px;display:grid;gap:0;align-content:start}
.s-calc-res div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:baseline;padding-block:14px}
.s-calc-res div+div{box-shadow:0 -1px 0 var(--trait)}
.s-calc-res b{font-size:30px;font-weight:300;white-space:nowrap}
.s-calc-res .s-ecart b{font-size:40px;font-weight:700;color:var(--sarcelle)}
.s-calc-res p{margin:14px 0 0;font-size:14px;color:var(--texte2)}
@media (max-width:860px){.s-calc{grid-template-columns:minmax(0,1fr)}.s-calc-saisie,.s-calc-res{padding:24px 20px}}

/* Questions : réponses dépliables, séparées par un simple trait */
.s-faq{max-width:860px}
.s-faq details{padding-block:4px}.s-faq details+details{box-shadow:0 -1px 0 var(--trait)}
.s-faq summary{cursor:pointer;list-style:none;font-size:18px;font-weight:500;padding:16px 36px 16px 0;position:relative}
.s-faq summary::-webkit-details-marker{display:none}
.s-faq summary::after{content:"+";position:absolute;right:4px;top:12px;font-size:24px;font-weight:300;color:var(--sarcelle)}
.s-faq details[open] summary::after{content:"−"}
.s-faq details>div{padding:0 0 18px;color:var(--texte2);max-width:70ch}.s-faq details>div p{margin:0 0 10px}
.s-faq-groupe{margin-top:40px}.s-faq-groupe:first-child{margin-top:0}

/* Ressources : liste éditoriale, puis article */
.s-liste{list-style:none;margin:0;padding:0;max-width:920px}
.s-liste li{display:grid;grid-template-columns:150px minmax(0,1fr);gap:8px 32px;padding-block:24px}
.s-liste li+li{box-shadow:0 -1px 0 var(--trait)}
.s-liste time{color:var(--texte2);font-size:14px;padding-top:6px}
.s-liste h2{font-size:22px;margin:0 0 6px;max-width:none}.s-liste h2 a{color:var(--texte);text-decoration:none}.s-liste h2 a:hover{color:var(--bleu)}
.s-liste p{margin:0;color:var(--texte2);max-width:64ch}
@media (max-width:640px){.s-liste li{grid-template-columns:minmax(0,1fr);gap:4px}}
.s-article{max-width:720px;font-size:17.5px;line-height:1.7}
.s-article h2{font-size:24px;margin:40px 0 12px;max-width:none}
.s-article h3{font-size:19px;margin:28px 0 8px}
.s-article p,.s-article ul,.s-article ol{margin:0 0 16px}
.s-article li{margin-bottom:6px}
.s-article table{margin:8px 0 20px}
.s-meta{color:var(--texte2);font-size:14px;margin:0}
.s-chapo{font-size:20px;color:var(--texte2);max-width:60ch;margin:0}
.s-reperes a{display:block;font-size:18px;font-weight:500;color:var(--texte);text-decoration:none}.s-reperes a:hover{color:var(--bleu)}
.s-rgpd{margin:14px 0 0;max-width:52ch}
/* Diagnostic 2027 : reprend la grille du calculateur des tarifs */
.s-diag-q{border:0;margin:0 0 22px;padding:0}
.s-diag-q legend{font-size:17px;line-height:1.4;margin-bottom:10px;padding:0}
.s-diag-q legend span{display:block;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:#bcd4ea;margin-bottom:4px}
.s-diag-q label{display:inline-flex;align-items:center;gap:8px;margin:0 20px 6px 0;font-size:15px;letter-spacing:0;text-transform:none;color:#fff;cursor:pointer}
.s-diag .s-calc-res{position:sticky;top:96px;align-self:start}
@media (max-width:860px){.s-diag .s-calc-res{position:static}}
.s-diag-q input{accent-color:#7fc8c2;width:18px;height:18px;margin:0;padding:0;font-size:inherit;background:none}
.s-diag-res{list-style:none;margin:8px 0 0;padding:0}
.s-diag-res li{padding-block:14px}
.s-diag-res li+li{box-shadow:0 -1px 0 var(--trait)}
.s-diag-res time{font-weight:700;color:var(--bleu);font-size:14px}
.s-diag-res p{margin:6px 0 0;font-size:15px;color:var(--texte)}
.s-diag-res .s-diag-ambly{color:var(--sarcelle);font-weight:500}
/* Tableau des emplois */
.e-filtres{display:flex;flex-wrap:wrap;gap:16px;align-items:end;margin:0 0 28px}
.e-filtres label{display:grid;gap:6px;font-size:13px;color:var(--texte2)}
.e-filtres select,.e-filtres input{font:inherit;font-size:15px;padding:9px 12px;border:1px solid var(--trait);border-radius:var(--r);background:var(--blanc);color:var(--texte);min-width:200px}
.e-filtres input{min-width:120px;width:120px}
.e-texte{font-size:16px;line-height:1.65;max-width:680px}
.s-liste li.e-vide{display:block}
/* Vérificateur de prise en charge */
.s-pec .s-pec-ligne{display:flex;align-items:flex-start;margin:0 0 8px}.s-pec .s-pec-ligne input{flex:none;margin-top:2px}
@media (max-width:860px){.s-pec .s-pec-a{order:-1}}
.s-pec .s-calc-saisie input[type=date]{font-size:20px}
.s-pec .s-calc-res .s-pec-verdict{display:block;padding-block:0 18px}
.s-pec-verdict span{display:block;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--texte2)}
.s-pec .s-calc-res .s-pec-verdict b{display:block;font-size:34px;font-weight:700;line-height:1.15;margin-top:6px;white-space:normal}
.s-pec-oui b{color:var(--vert)}.s-pec-accord b{color:var(--bleu)}.s-pec-verifier b{color:var(--ambre)}.s-pec-non b{color:var(--rouge)}
.s-pec .s-calc-res p.s-pec-t{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--texte2);margin:22px 0 6px}
.s-pec-l{margin:0;padding:0 0 0 18px}.s-pec-l li{margin:0 0 6px;font-size:15px;line-height:1.5}
.s-pec .s-calc-res p.s-pec-m{margin:0;font-size:15px;color:var(--texte)}
.s-pec .s-calc-saisie .btn{background:#fff;color:var(--bleu-fonce);margin-top:4px}.s-pec .s-calc-saisie .btn:hover{background:var(--doux)}
/* Recette du 14/10 : grilles de formulaire sans débordement sur téléphone */
.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.field input,.field select,.field textarea{min-width:0;max-width:100%}
@media (max-width:480px){.form-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.document{overflow-x:auto}.document .tbl{min-width:0}.document .tbl td,.document .tbl th{padding:8px 6px}}
.niv-a_prevoir{background:var(--t-prevu);color:#174e86}
