.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.chk{display:flex;gap:8px;align-items:center;margin:9px 0;font-size:13px}
.navfoot{margin-top:auto;padding:14px 10px;font-size:11px;color:var(--mut);line-height:1.5}.loc{font-size:12px;color:var(--mut)}
.inl{display:inline;margin:0}.sm{padding:6px 11px!important;font-size:12px!important}.sm2{font-size:12px}.mut{color:var(--mut)}
.conf{background:var(--card);border:1px solid var(--line);border-radius:var(--r2);padding:14px}.conf b{font-size:24px;display:block}
.launch summary{cursor:pointer;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.launch{margin-bottom:14px}
.launchf{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:12px}.launchf label{font-size:13px;display:flex;gap:8px;align-items:center}.launchf .t{width:90px}
.detg{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:18px;padding:6px 2px}
.proof{white-space:pre-wrap;word-break:break-word;background:var(--thb);border:1px solid var(--line);border-radius:8px;padding:10px;font-size:12px;max-height:300px;overflow:auto}
.caps{display:flex;gap:8px;flex-wrap:wrap}.caps img{height:110px;border:1px solid var(--line);border-radius:6px}
.valbox{display:flex;flex-direction:column;gap:12px}.vf{border:1px solid var(--line);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:6px;background:var(--card)}
.vf input[type=file]{font-size:12px;max-width:100%}tr.det td{background:#fbfbfe}.rub{text-decoration:none;color:inherit}.rub.on{outline:2px solid var(--pri)}
textarea.t{width:100%;font:inherit}.ba{min-width:0}
@media(max-width:820px){.detg,.two{grid-template-columns:1fr}}
@media print{header,nav.side,.mnav,.btns,.banner{display:none}}
a.b1,a.b2{text-decoration:none}.qrb .mono{word-break:break-all}.qr{flex:none}.qr path{fill:#111}

.tl li>div{min-width:0;overflow-wrap:anywhere}.mono{overflow-wrap:anywhere}
@media(max-width:600px){.loc{display:none}}
@media(max-width:900px){.layout>main{min-width:0;flex:1}.layout>main *{min-width:0;overflow-wrap:anywhere}.layout>main dl,.layout>main .kv{grid-template-columns:1fr}}

.banner.i{width:auto;height:auto;flex:initial}
/* lot 4 : espaces, brief, support */
.spaces{display:inline-flex;border:1px solid #d6dbe4;border-radius:8px;overflow:hidden;margin-left:14px}
.spaces a{padding:5px 14px;font-weight:600;font-size:13px;color:#334;text-decoration:none}
.spaces a.on{background:#1f3a8a;color:#fff}
.bsec{margin-bottom:16px}.bsec h2{font-size:17px;margin:0 0 6px}.bsec h2 .n{display:inline-block;width:24px;height:24px;border-radius:50%;background:#1f3a8a;color:#fff;text-align:center;line-height:24px;font-size:13px;margin-right:6px}
.exs{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin:10px 0}
.exs .ex{border:1px solid #e3e7ee;border-radius:10px;padding:10px;background:#fff}.exs .ex img{width:100%;border-radius:6px;border:1px solid #eee}
.rep label{margin-right:10px;white-space:nowrap}.tbl td,.tbl th{vertical-align:top}
.avap{display:grid;grid-template-columns:1fr 1fr;gap:12px}.avap img{width:100%;border:1px solid #e3e7ee;border-radius:8px}
.fil{border-left:3px solid #c9d3e6;padding-left:10px;margin:6px 0}.pre{white-space:pre-wrap;background:#f7f8fb;border:1px solid #e6e9f0;border-radius:8px;padding:10px;max-height:420px;overflow:auto}
textarea.t{width:100%;min-height:90px}.thumbs img{max-width:180px;max-height:140px;border:1px solid #ddd;border-radius:6px;margin:4px}
.vt td,.vt th{text-align:center}.vt td:first-child,.vt th:first-child{text-align:left}
@media (max-width:700px){.avap{grid-template-columns:1fr}.spaces{margin-left:6px}.spaces a{padding:4px 9px}header .loc{display:none}}
.filt{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.filt select,.filt input{max-width:100%;min-width:0}
.avap{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px;width:100%}.avap>div{min-width:0;display:flex;flex-direction:column;gap:4px}.avap img{display:block;max-width:100%;height:auto}.avap small{overflow-wrap:anywhere}
.card p:has(> a.b2){display:flex;flex-wrap:wrap;gap:8px}
.stack>*{flex-shrink:0}
.mob{width:180px;max-width:100%;border:1px solid #e3e7ee;border-radius:8px}

/* v4.2.2 cloche */
.bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;color:var(--mut);margin-left:8px}
.bell.on{color:var(--pri);background:var(--pril)}.bn{display:inline-block;min-width:18px;padding:1px 5px;border-radius:999px;background:var(--red);color:#fff;font-size:11px;font-weight:700;text-align:center;line-height:16px}
.bell .bn{position:absolute;top:-4px;right:-4px}
.nref{display:inline-flex;gap:6px;margin-left:6px;align-items:center}.nref .t{min-width:180px}
@media(max-width:700px){.ntf td{display:block}.ntf thead{display:none}.nref{display:flex;margin:6px 0 0}.nref .t{flex:1;min-width:0}}
/* v4.2.3 : statut Desk */
.st.tk{font-weight:600;white-space:nowrap}
.tk-ouv{background:#e6f0ff;color:#1d4ed8}
.tk-att{background:#fff4e0;color:#b45309}
.tk-esc{background:#fde8e8;color:#b91c1c}
.tk-clos{background:#eceff3;color:#4b5563}
.tk-autre{background:#f1ecff;color:#6d28d9}
h1 .st.tk{font-size:13px;vertical-align:middle;margin-left:8px}
.chips.etats{margin:6px 0 10px;flex-wrap:wrap}
/* v4.2.4 : boîte en cartes sur téléphone, fiche client sur le message, pièces par demande */
@media(max-width:700px){.bx thead{display:none}.bx tr{display:block;border-bottom:1px solid #e6e8ef;padding:8px 4px}.bx td{display:block;border:0;padding:3px 8px}.bx td small{display:block}}
.clientc{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap}.clientc .lg{height:34px;width:auto;max-width:130px;object-fit:contain}.clientc small{display:block;color:#5b6170;margin-top:3px}.clientc>div{flex:1;min-width:200px}
.pj{display:block;font-size:12px;white-space:nowrap}

.dems{display:grid;gap:12px;margin:8px 0}
.dm{border:1px solid #e3e6ef;border-radius:10px;padding:10px 12px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 12px;margin:0}
.dm legend{font-weight:600;font-size:13px;padding:0 4px}
.dm label{display:flex;flex-direction:column;font-size:12px;color:#556;gap:3px;min-width:0}
.dm .full{grid-column:1/-1}
.dm .t{width:100%;box-sizing:border-box}
.dm .lb{font-size:12px;color:#556;display:block;margin-bottom:3px}
.dm label.pj{flex-direction:row;align-items:center;display:inline-flex;margin-right:12px;color:#222}
.dm.vide{opacity:.75}
@media (max-width:700px){.dm{grid-template-columns:1fr 1fr}}
