/* v2-dossier-fin.css — 22/10/2026 : fiche dossier en lignes fines + barre de menus (voir v2-dossier-fin.js).
   Tout est limité à .pl-corps.dfin (posé seulement sur #/dossier/<n°>) : le Planning ne change pas. */

/* ---------- barre de menus au-dessus du tableau ---------- */
.pl-corps.dfin{flex-direction:column;align-items:stretch;flex-wrap:nowrap}
.pl-corps.dfin > .pl-centre{width:100%;order:2}
.pl-corps.dfin > #ds-a.pl-actions{order:1;display:flex!important;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px;width:100%!important;flex:none!important;position:relative!important;top:auto!important;margin:0!important;z-index:30;box-sizing:border-box}
.pl-corps.dfin > #ds-a > h6.grp{display:none}
.pl-corps.dfin > #ds-a > p.leg-ab{margin:0 0 0 auto;font-size:11.5px;color:#C4D3E6;white-space:nowrap}
.dfin-barre{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}
.dfin-m{position:relative}
.pl-actions .dfin-barre .bt.dfin-t,.pl-actions .dfin-barre .bt.dfin-tout{width:auto;min-height:44px;padding:0 16px;gap:8px;justify-content:center;white-space:nowrap}
.pl-actions .dfin-barre .bt.dfin-t span,.pl-actions .dfin-barre .bt.dfin-tout span{flex:none;padding:0}
.pl-actions .dfin-barre .bt.dfin-t.clair,.pl-actions .dfin-barre .bt.dfin-tout{color:#0F2A4A;background:#fff;border-color:#C4D3E6}
.pl-actions .dfin-barre .bt.dfin-t.fonce{color:#fff;background:#0F2A4A;border-color:rgba(196,211,230,.55)}
.dfin-t .dfin-fl{transition:transform .15s}
.dfin-m.ouvert > .dfin-t .dfin-fl{transform:rotate(180deg)}
.dfin-m.ouvert > .bt.dfin-t.clair{background:#E8F1FC}
.dfin-p{display:none;position:absolute;left:0;top:calc(100% + 6px);min-width:280px;max-width:min(360px,calc(100vw - 32px));box-sizing:border-box;padding:6px;border-radius:14px;background:#fff;border:1px solid #C4D3E6;box-shadow:0 18px 40px -12px rgba(8,24,48,.45),0 2px 6px rgba(8,24,48,.15);z-index:60;flex-direction:column;gap:4px}
.dfin-p.adroite{left:auto;right:0}
.dfin-m.ouvert > .dfin-p{display:flex}
.pl-actions .dfin-p > .bt,.pl-actions .dfin-p > a.bt{width:100%;min-height:44px;justify-content:flex-start;color:#0F2A4A!important;background:#fff!important;border:0!important;box-shadow:none!important;border-radius:10px;text-align:left;white-space:normal;word-break:normal;overflow-wrap:normal;hyphens:none}
.pl-actions .dfin-p > .bt:hover,.pl-actions .dfin-p > .bt:focus-visible{background:#E8F1FC!important}
.pl-actions .dfin-p > .bt svg{color:#1E5AA8}
.pl-actions .dfin-p > .bt span{flex:1;line-height:1.2}

/* ---------- lignes fines (ordinateur et tablette) ---------- */
@media (min-width:761px){
  .pl-corps.dfin table.tm.dfin-tm{table-layout:fixed}
  .pl-corps.dfin table.tm.dfin-tm col:nth-child(2){width:132px!important}
  .pl-corps.dfin table.tm.dfin-tm col:nth-child(4){width:84px!important}
  .pl-corps.dfin table.tm.dfin-tm col:nth-child(5){width:104px!important}
  .pl-corps.dfin table.tm.dfin-tm col:nth-child(6){width:19%!important}
  .pl-corps.dfin table.tm.dfin-tm col:nth-child(7){width:auto!important}
  .pl-corps.dfin table.tm.dfin-tm col:nth-child(11){width:150px!important}
  .pl-corps.dfin table.tm.dfin-tm td.c-num{white-space:nowrap}
  .dfin-chev{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:-6px 0 -6px -4px;padding:0;border:0;border-radius:50%;background:transparent;color:#1E5AA8;cursor:pointer;vertical-align:middle;flex:none}
  .dfin-chev:hover,.dfin-chev:focus-visible{background:#E8F1FC}
  .dfin-chev svg{transition:transform .15s}
  .dfin-chev[aria-expanded="true"] svg{transform:rotate(90deg)}
  .pl-corps.dfin table.tm.dfin-tm td.c-num a.num{vertical-align:middle}

  /* ligne repliée : une seule ligne, ~48 px */
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv){height:48px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) > td{padding-top:2px;padding-bottom:2px;height:48px;box-sizing:border-box}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dt{flex-direction:row;align-items:baseline;gap:3px;white-space:nowrap;font-size:11px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dt b{font-size:14px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .hrs{flex-direction:row;align-items:baseline;gap:6px;white-space:nowrap}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .hrs .hd{font-size:13px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .hrs .hfn{margin:0;font-size:11.5px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .hrs .hfn::before{content:"– "}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .hrs .hf{display:none}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .cli2{align-items:center}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .cli2 .cli{line-height:1.2}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .cli2 .cli > *{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .cli2 .cli > .nomcli{display:flex}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .nomcli b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .cli2 .cli > span{font-size:11.5px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .cli2 .cli > span ~ span{display:none}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .cli2 .cpt{font-size:10.5px;gap:0}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dfin-iti{display:flex;align-items:center;gap:8px;min-width:0}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dfin-iti .iti1{flex:1 1 auto;min-width:0;gap:6px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti1 .dep,.pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti1 .arr{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dfin-iti .iti2{flex:0 1 auto;min-width:0;max-width:46%;margin:0;flex-wrap:nowrap;gap:4px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 .puce{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:100%;min-height:26px;height:26px;padding:0 9px;font-size:11px;line-height:26px;flex:0 1 auto}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 .puce.etape{flex:none}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .et-l,
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dfin-plus,
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .trx,
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-veh br,
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-veh .puce{display:none}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-veh,
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-chf{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-chf .arch{margin-left:4px;font-size:10.5px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-st{white-space:nowrap;overflow:hidden}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-st .etb{min-height:26px;height:26px;padding:0 10px;font-size:11.5px;border-radius:13px;gap:6px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-st .etb b{width:7px;height:7px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-st small.regle{display:inline;margin:0 0 0 6px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .nomcli .eti{flex:none}
}
@media (min-width:761px) and (max-width:1500px){
  .pl-corps.dfin table.tm.dfin-tm col:nth-child(8){width:96px!important}
  .pl-corps.dfin table.tm.dfin-tm col:nth-child(9){width:108px!important}
  .pl-corps.dfin table.tm.dfin-tm col:nth-child(11){width:128px!important}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dt span:first-child{display:none}
  .pl-corps.dfin table.tm.dfin-tm col:nth-child(4){width:64px!important}
}
/* détail affiché en dépliant (ordinateur et téléphone) */
.dfin-plus{display:grid;gap:3px;margin-top:8px;padding:8px 10px;border-radius:10px;background:#F2F5F9;border:1px solid #C4D3E6;font-size:12px;color:#0F2A4A;cursor:default}
.dfin-plus > div{display:flex;gap:8px;align-items:baseline}
.dfin-plus span{flex:none;min-width:130px;color:#5A6B82;font-size:11px;font-weight:700;letter-spacing:.02em}
.dfin-plus b{font-weight:600;white-space:normal;word-break:normal;overflow-wrap:normal;hyphens:none}
.pl-corps.dfin .dfin-tm tbody tr.lg.dfin-ouv{box-shadow:inset 0 2px 0 #1E5AA8}

/* ---------- téléphone : carte fine sur deux lignes ---------- */
@media (max-width:760px){
  .pl-corps.dfin > #ds-a.pl-actions{gap:6px;margin-bottom:4px!important}
  .pl-corps.dfin > #ds-a > p.leg-ab{margin:0;white-space:normal;width:100%}
  .dfin-barre{gap:6px;width:100%}
  .pl-actions .dfin-barre .bt.dfin-t,.pl-actions .dfin-barre .bt.dfin-tout{padding:0 12px;font-size:13px}
  .dfin-m{position:static}
  .pl-corps.dfin > #ds-a.pl-actions{position:relative!important}
  .dfin-p,.dfin-p.adroite{left:0;right:0;min-width:0;max-width:none;width:100%}
  .dfin-chev{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:#1E5AA8;cursor:pointer}
  .dfin-chev svg{transition:transform .15s}
  .dfin-chev[aria-expanded="true"] svg{transform:rotate(90deg)}
  /* repliée : ligne 1 = case, heure, client, état, menu ; ligne 2 = chevron, date, trajet + vol */
  .pl-corps.dfin table.tm.dfin-tm tbody tr.lg:not(.dfin-ouv){grid-template-columns:44px 62px minmax(0,1fr) auto 44px!important;grid-template-areas:"sel h cli st plus" "num date iti iti iti"!important;gap:2px 6px!important;padding:6px 6px 6px 4px!important;margin-bottom:8px!important;align-items:center;border-radius:14px!important}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td{min-width:0}
  .pl-corps.dfin .dfin-tm tbody tr.lg td.c-num{display:block!important;grid-area:num}
  .pl-corps.dfin .dfin-tm tbody tr.lg td.c-date{display:block!important;grid-area:date}
  .pl-corps.dfin .dfin-tm tbody tr.lg td.c-num a.num{display:none}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-type,
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-veh,
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-chf,
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-inf{display:none!important}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dt{flex-direction:row;align-items:baseline;gap:3px;white-space:nowrap;font-size:10.5px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dt b{font-size:14px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .hrs .hf,.pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .hrs .hfn{display:none}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .cli2 .cpt{display:none}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .cli2 .cli{line-height:1.2;min-width:0}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .cli2 .cli > *{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .cli2 .cli > .nomcli{display:flex}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .nomcli b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12.5px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .cli2 .cli > span{font-size:11.5px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .cli2 .cli > span ~ span{display:none}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-st .etb{min-height:26px;height:26px;padding:0 8px;font-size:11px;border-radius:13px;gap:5px;white-space:nowrap;max-width:118px;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;display:inline-flex}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-st .etb b{width:7px;height:7px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-st small.regle{display:none}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dfin-iti{display:flex;align-items:center;gap:6px;min-width:0}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dfin-iti .iti1{flex:1 1 auto;min-width:0;gap:4px;font-size:12px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti1 .dep,.pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti1 .arr{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dfin-iti .iti2{flex:0 1 auto;max-width:42%;min-width:0;margin:0;flex-wrap:nowrap;gap:4px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 .puce{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:100%;min-height:24px;height:24px;padding:0 7px;font-size:10.5px;line-height:24px}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 .puce.etape{display:none}
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .et-l,
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dfin-plus,
  .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .trx{display:none}
  /* dépliée : la carte d'origine, avec le chevron et la date en tête */
  .pl-corps.dfin table.tm.dfin-tm tbody tr.lg.dfin-ouv{grid-template-columns:44px 44px auto minmax(0,1fr) 44px!important;grid-template-areas:"num sel date h plus" "cli cli cli cli cli" "iti iti iti iti iti" "chf chf chf chf chf" "veh veh veh veh veh" "st st st st st"!important}
  .pl-corps.dfin .dfin-tm tbody tr.lg.dfin-ouv .dt{flex-direction:row;align-items:baseline;gap:3px}
  .dfin-plus span{min-width:96px}
}

/* ---------- pastilles fines (vol, train, étapes, état) : zone de clic gardée à 44 px par un débord invisible ---------- */
#v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce{position:relative;display:inline-block!important;min-height:0!important;height:26px;line-height:26px!important;padding:0 9px!important;margin:0!important;font-size:11px;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis;max-width:100%;vertical-align:middle}
#v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce::after{content:"";position:absolute;left:0;right:0;top:-9px;bottom:-9px}
#v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce.etape{flex:none;overflow:visible}
#v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce.vol,#v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce.train{flex:0 1 auto;min-width:0}
#v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-st .etb{display:inline-block!important;height:26px;min-height:0!important;line-height:26px!important;padding:0 10px!important;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis;max-width:100%;vertical-align:middle;text-align:left}
#v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-st .etb b{display:inline-block;vertical-align:middle;margin:-2px 6px 0 0}
@media (min-width:761px){#v2-contenu .pl-corps.dfin table.tm.dfin-tm col:nth-child(11){width:200px!important}}
@media (min-width:761px) and (max-width:1500px){#v2-contenu .pl-corps.dfin table.tm.dfin-tm col:nth-child(11){width:150px!important}}
@media (max-width:760px){
  #v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti1{flex-direction:row!important;align-items:center!important;gap:4px}
  #v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti1 .fl{transform:none!important}
  #v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce{height:24px;line-height:24px!important;padding:0 7px!important;font-size:10.5px}
  #v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce.etape{display:none!important}
  #v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-st .etb{max-width:118px;padding:0 8px!important;font-size:11px}
}
@media (min-width:761px) and (max-width:1500px){
  #v2-contenu .pl-corps.dfin table.tm.dfin-tm col:nth-child(2){width:118px!important}
  #v2-contenu .pl-corps.dfin table.tm.dfin-tm col:nth-child(5){width:92px!important}
  #v2-contenu .pl-corps.dfin table.tm.dfin-tm col:nth-child(6){width:16%!important}
  #v2-contenu .pl-corps.dfin table.tm.dfin-tm col:nth-child(9){width:100px!important}
}
#v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce.vol,#v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce.train{min-width:64px}
#v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-iti{overflow:hidden}
@media (max-width:760px){
  #v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) td.c-iti{padding-right:4px!important}
  #v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dfin-iti .iti2{max-width:38%}
  #v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce.vol,#v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce.train{min-width:0}
}
@media (min-width:761px){
  #v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dfin-iti .iti2{flex:0 0 auto;max-width:none}
  #v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce.vol,#v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce.train{max-width:190px}
  #v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .dfin-iti .iti1{min-width:120px}
  .pl-corps.dfin .dfin-chev{margin-left:-8px}
}
@media (min-width:761px) and (max-width:1500px){
  #v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce.vol,#v2-contenu .pl-corps.dfin .dfin-tm tbody tr.lg:not(.dfin-ouv) .iti2 button.puce.train{max-width:104px}
  #v2-contenu .pl-corps.dfin table.tm.dfin-tm col:nth-child(2){width:124px!important}
}
/* dépliée : la plaque reste dans sa colonne */
.pl-corps.dfin .dfin-tm tbody tr.lg.dfin-ouv td.c-veh{overflow:hidden}
.pl-corps.dfin .dfin-tm tbody tr.lg.dfin-ouv td.c-veh .puce{white-space:normal!important;word-break:normal;overflow-wrap:break-word;max-width:100%;display:inline-block;line-height:1.25;text-align:center}
/* menus : même dessin sur toutes les tailles d'écran */
#v2-contenu .pl-corps.dfin #ds-a .dfin-p > .bt,#v2-contenu .pl-corps.dfin #ds-a .dfin-p > a.bt{width:100%!important;min-height:44px!important;justify-content:flex-start!important;color:#0F2A4A!important;background:#fff!important;border:0!important;box-shadow:none!important;border-radius:10px!important;margin:0!important}
#v2-contenu .pl-corps.dfin #ds-a .dfin-p > .bt:hover,#v2-contenu .pl-corps.dfin #ds-a .dfin-p > .bt:focus-visible{background:#E8F1FC!important}

/* ---- v2 22/10/2026 : volet « comme WAY-Plan » sous la ligne (tarif, accès mission, PDF, détail) ; la ligne reste fine ---- */
.pl-corps.dfin .dfin-tm tbody tr.lg.dfin-sel > td{background:#E8F1FC}

.pl-corps.dfin .dfin-tm tbody tr.dfin-sous > td{padding:0!important;background:#F4F7FB;border-top:0;border-bottom:2px solid #1E5AA8;height:auto;white-space:normal;cursor:default}
.dfs{display:flex;flex-wrap:wrap;gap:14px;padding:12px 14px 14px 52px;box-sizing:border-box;font-family:Manrope,system-ui,sans-serif;color:#0F2A4A;text-align:left}
.dfs-tarif{flex:3 1 560px;min-width:0;background:#fff;border:1px solid #C4D3E6;border-radius:12px;padding:10px 12px}
.dfs-cote{flex:1 1 260px;min-width:0;display:flex;flex-direction:column;gap:10px}
.dfs-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:8px}
.dfs-h b{font:800 12px Montserrat,sans-serif;letter-spacing:1.2px;text-transform:uppercase;color:#1E5AA8}
.dfs-etat{font-size:12px;color:#5B6675}
.dfs-tab{overflow-x:auto}
.dfs-t{width:100%;border-collapse:collapse;font-size:13px}
.dfs-t th{font:700 10.5px Montserrat,sans-serif;letter-spacing:.8px;text-transform:uppercase;color:#5B6675;text-align:left;padding:4px 6px;border-bottom:1px solid #C4D3E6;white-space:nowrap;background:none}
.dfs-t td{padding:4px 6px;border-bottom:1px solid #E6ECF3;vertical-align:middle;background:none}
.dfs-t .dfs-n{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.dfs-t td.dfs-d{min-width:180px;width:46%}
.dfs-i{box-sizing:border-box;height:40px;width:100%;border:1.5px solid #C4D3E6;border-radius:9px;padding:0 9px;font:500 13px Manrope,sans-serif;color:#0F2A4A;background:#fff;min-width:0}
.dfs-i:focus{outline:none;border-color:#1E5AA8;box-shadow:0 0 0 3px rgba(30,90,168,.15)}
.dfs-i:disabled{background:#F2F5F9;color:#5B6675}
.dfs-q .dfs-i{width:64px}.dfs-p .dfs-i{width:96px}.dfs-tv select.dfs-i{width:84px;padding:0 4px}
.dfs-xb{width:44px;height:44px;border:1px solid #C4D3E6;border-radius:10px;background:#fff;color:#0F2A4A;font-size:18px;cursor:pointer}
.dfs-xb:hover{background:#E8F1FC}
.dfs-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.dfs-pied{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin-top:10px}
.dfs-ch{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:#5B6675}
.dfs-ch .dfs-i{width:130px}
.dfs-tot{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin-top:10px;padding-top:10px;border-top:1px solid #E6ECF3;font-size:12.5px;color:#5B6675}
.dfs-tot b{color:#0F2A4A;font-variant-numeric:tabular-nums;margin-left:4px}
.dfs-tot .dfs-ttc b{font:800 15px Montserrat,sans-serif}
.dfs-tot .dfs-b{margin-left:auto}
.dfs-b{min-height:44px;padding:0 14px;border-radius:11px;border:1px solid #C4D3E6;background:#fff;color:#0F2A4A;font:700 12.5px Montserrat,sans-serif;cursor:pointer;text-align:left;overflow-wrap:break-word}
.dfs-b:hover,.dfs-b:focus-visible{background:#E8F1FC}
.dfs-b.fonce{background:#0F2A4A;color:#fff;border-color:#0F2A4A}
.dfs-b.fonce:hover{background:#1E5AA8}
.dfs-b:disabled{opacity:.6;cursor:wait}
.dfs-act{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dfs-info{background:#fff;border:1px solid #C4D3E6;border-radius:12px;padding:8px 12px;display:grid;gap:5px;font-size:12.5px}
.dfs-l{display:grid;grid-template-columns:118px 1fr;gap:8px;min-width:0}
.dfs-l span{font:700 10.5px Montserrat,sans-serif;letter-spacing:.6px;text-transform:uppercase;color:#1E5AA8;padding-top:2px}
.dfs-l b{font-weight:600;min-width:0;overflow-wrap:break-word}
.dfs-notes b{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
@media (max-width:760px){
  .pl-corps.dfin table.tm tbody tr.dfin-sous{display:block!important;margin:-6px 0 12px}
  .pl-corps.dfin table.tm tbody tr.dfin-sous > td{display:block!important;width:auto!important;border-radius:0 0 14px 14px}
  .dfs{padding:10px;gap:10px}
  .dfs-tarif,.dfs-cote{flex-basis:100%}
  .dfs-t thead{display:none}
  .dfs-t,.dfs-t tbody{display:block}
  .dfs-t tbody tr{display:grid;grid-template-columns:1fr 64px 44px;grid-template-areas:"d d x" "p t q" "ht ttc ttc";gap:6px;padding:8px 0;border-bottom:1px solid #E6ECF3}
  .dfs-t td{display:block;border:0;padding:0}
  .dfs-t td.dfs-d{grid-area:d;width:auto;min-width:0}.dfs-t td.dfs-x{grid-area:x}.dfs-t td.dfs-p{grid-area:p}.dfs-t td.dfs-tv{grid-area:t}.dfs-t td.dfs-q{grid-area:q}
  .dfs-t td.tf-ht{grid-area:ht;text-align:left}.dfs-t td.tf-ttc{grid-area:ttc;font-weight:800}
  .dfs-t td.tf-ht::before{content:"HT "}.dfs-t td.tf-ttc::before{content:"TTC "}
  .dfs-p .dfs-i,.dfs-q .dfs-i,.dfs-tv select.dfs-i{width:100%}
  .dfs-ch{flex:1 1 130px}.dfs-ch .dfs-i{width:100%}
  .dfs-pied > .dfs-b{flex-basis:100%}
  .dfs-tot .dfs-b{margin-left:0;flex-basis:100%;text-align:center}
  .dfs-l{grid-template-columns:96px 1fr}
}
.pl-corps.dfin table.tm .dfs-t thead,.pl-corps.dfin table.tm .dfs-t thead tr,.pl-corps.dfin table.tm .dfs-t thead th{position:static!important;top:auto!important;z-index:auto!important;background:none!important;box-shadow:none!important;color:#5B6675!important;height:auto!important}
.pl-corps.dfin .dfin-tm tbody tr.lg.dfin-sel .dfin-chev{color:#1E5AA8;background:#fff;border-color:#1E5AA8}
