/* Cartes grises et financements (17/10, maquette docs/maquettes/administratif) — préfixe « fm- »,
   jetons de .or (ord.css). Grand écran : le dossier choisi reste ouvert à droite (volet fixe) ;
   ailleurs il glisse par-dessus ; téléphone : colonnes empilées, volet plein écran. */
.or.fm{padding:4px 0 90px}
.fm-tete{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fm-tete h1{margin:0 6px 0 0;font-size:24px;font-weight:780;letter-spacing:-.025em}
.fm-tete .or-btn.on{background:hsl(var(--encre));color:#fff;box-shadow:none}
.fm-cherche{width:300px}
.fm-chif{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;align-items:stretch}
.fm-chif .grp-t{display:flex;align-items:center;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.06em;color:hsl(var(--doux));padding:0 4px 0 8px}
.fm-k{display:flex;align-items:center;gap:8px;height:44px;padding:0 14px;border-radius:13px;background:hsl(var(--carte));box-shadow:var(--ombre-1),0 0 0 1px hsl(var(--trait)) inset;font-size:13px;font-weight:650;color:hsl(var(--doux));white-space:nowrap;transition:transform 90ms,background .16s}
.fm-k b{font-size:21px;font-weight:800;color:hsl(var(--encre));letter-spacing:-.02em}
.fm-k.orange b{color:hsl(var(--orange))}.fm-k.rouge b{color:hsl(var(--rouge))}.fm-k.vert b{color:hsl(var(--vert))}.fm-k.bleu b{color:hsl(var(--azur-fort))}
.fm-k.on{background:hsl(var(--encre));color:#fff;box-shadow:none}.fm-k.on b{color:#fff}
.fm-k:active{transform:scale(.97)}
.fm-zone{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-top:12px;align-items:start}
@media (min-width:1800px){.fm-zone{grid-template-columns:minmax(0,1fr) 620px}}
@media (min-width:2300px){.fm-zone{grid-template-columns:minmax(0,1fr) 700px}}
.fm-gauche{display:grid;gap:14px;min-width:0}
.fm-sec-t{display:flex;align-items:center;gap:10px;margin:0 0 8px}
.fm-sec-t h2{margin:0;font-size:16px;font-weight:780;letter-spacing:-.01em}
.fm-sec-t small{font-size:12.5px;color:hsl(var(--doux));font-weight:600}

/* cartes grises : 4 colonnes */
.fm-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.fm-colo{border-radius:18px;background:hsl(var(--gris-doux)/.7);padding:8px;display:grid;gap:8px;align-content:start;min-height:120px}
.fm-colo h3{margin:2px 4px;display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:750}
.fm-colo h3 i{width:9px;height:9px;border-radius:50%}
.fm-colo h3 b{margin-left:auto;font-size:13px;color:hsl(var(--doux))}
.fm-cg{position:relative;display:grid;grid-template-columns:62px minmax(0,1fr);gap:4px 10px;padding:9px;border-radius:14px;background:hsl(var(--carte));box-shadow:var(--ombre-1),0 0 0 1px hsl(var(--trait)) inset;cursor:pointer;text-align:left;animation:or-entree .35s var(--sortie) both;transition:box-shadow .16s}
.fm-cg:hover{box-shadow:var(--ombre-2),0 0 0 1px hsl(var(--azur)/.35) inset}
.fm-cg.on{box-shadow:0 0 0 2px hsl(var(--azur)) inset,var(--ombre-2)}
.fm-cg.arrive,.fm-ln.arrive{animation:fm-arrive .55s var(--ressort) both}
@keyframes fm-arrive{0%{opacity:0;transform:translateX(-24px) scale(.96)}60%{background:hsl(var(--menthe-doux))}}
.fm-cg>.v2-vignette,.fm-cg>.fm-vg{width:62px;height:44px;border-radius:8px;overflow:hidden;grid-row:1/3}
.fm-cg .tx{min-width:0}
.fm-cg b{font-size:13.5px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fm-cg small{font-size:12px;color:hsl(var(--doux));display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fm-cg .liv .imp{display:inline;font-size:12px;color:hsl(var(--violet))}
.fm-cg .bas{grid-column:1/3;display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:2px}
.fm-cg .geste{margin-left:auto}
.fm-vd{width:22px!important;height:22px!important;font-size:10px!important;display:inline-grid!important;vertical-align:middle;margin-right:4px}
.fm-ch{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 7px;border-radius:7px;font-size:11.5px;font-weight:700;white-space:nowrap;background:hsl(var(--gris-doux));color:hsl(var(--doux));max-width:100%;overflow:hidden;text-overflow:ellipsis}
.fm-ch.bleu{background:hsl(var(--azur-doux));color:hsl(var(--azur-fort))}.fm-ch.orange{background:hsl(var(--orange-doux));color:hsl(var(--orange))}.fm-ch.rouge{background:hsl(var(--rouge-doux));color:hsl(var(--rouge))}.fm-ch.vert{background:hsl(var(--vert-doux));color:hsl(var(--vert))}
.fm-mini{display:inline-flex;align-items:center;height:28px;padding:0 10px;border-radius:8px;font-size:12.5px;font-weight:700;color:#fff;background:linear-gradient(180deg,hsl(213 92% 52%),hsl(var(--azur-fort)));box-shadow:0 6px 14px -8px hsl(var(--azur)/.8);white-space:nowrap;transition:transform 90ms}
.fm-mini:active{transform:scale(.95)}.fm-mini[disabled]{opacity:.5}
.fm-mini.vert{background:linear-gradient(180deg,hsl(152 60% 38%),hsl(var(--vert)))}
.fm-mini.gris{color:hsl(var(--encre));background:hsl(var(--carte));box-shadow:0 0 0 1px hsl(var(--trait-fort)) inset}

/* financements */
.fm-liste{border-radius:20px;background:hsl(var(--carte));box-shadow:var(--ombre-1),0 0 0 1px hsl(var(--trait)) inset;overflow:hidden}
.fm-th,.fm-ln{display:grid;grid-template-columns:76px minmax(170px,1.3fr) minmax(130px,1fr) 108px 150px minmax(150px,1fr) 64px 150px;gap:12px;align-items:center;padding:0 14px}
@media (min-width:2300px){.fm-th,.fm-ln{grid-template-columns:84px minmax(200px,1.3fr) minmax(160px,1fr) 120px 170px minmax(200px,1.2fr) 72px 170px}}
.fm-th{height:38px;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.05em;color:hsl(var(--doux));background:hsl(var(--fond)/.6);border-bottom:1px solid hsl(var(--trait))}
.fm-th .r,.fm-ln .r{text-align:right;justify-self:end}
.fm-ln{padding-top:8px;padding-bottom:8px;border-top:1px solid hsl(var(--trait));cursor:pointer;transition:background .16s;animation:or-entree .35s var(--sortie) both}
.fm-th+.fm-ln{border-top:0}
.fm-ln:hover{background:hsl(var(--fond))}
.fm-ln.on{background:hsl(var(--azur-doux))}
.fm-ln>.v2-vignette,.fm-ln>.fm-vg{width:76px;height:50px;border-radius:9px;overflow:hidden}
.fm-ln b{font-size:14px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fm-ln b.m{font-weight:650}
.fm-ln small{font-size:12px;color:hsl(var(--doux));display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fm-ln .mt{font-size:17px;font-weight:800;letter-spacing:-.02em}
.fm-ln>span{min-width:0}
.fm-etp{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}
.fm-etp i{height:6px;border-radius:3px;background:hsl(var(--trait));transition:background .4s}
.fm-etp i.f{background:hsl(var(--menthe-fort))}.fm-etp i.c{background:hsl(var(--azur))}.fm-etp i.x{background:hsl(var(--rouge))}
.fm-ln .etl{font-size:12.5px;font-weight:700;margin-top:4px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.etl.orange{color:hsl(var(--orange))}.etl.vert{color:hsl(var(--vert))}.etl.rouge{color:hsl(var(--rouge))}
.fm-vide{padding:40px 20px;text-align:center;color:hsl(var(--doux));font-weight:600}
@media (max-width:1300px){.fm-th .cP,.fm-ln .cP{display:none}.fm-th,.fm-ln{grid-template-columns:70px minmax(160px,1.3fr) minmax(120px,1fr) 100px 140px 60px 150px}}

/* volet */
.fm-volet{position:fixed;z-index:190;top:0;right:0;bottom:0;width:min(640px,100vw);display:flex;flex-direction:column;background:hsl(var(--fond));box-shadow:-30px 0 80px -20px hsl(220 50% 15%/.35);animation:fm-glisse .32s var(--sortie) both}
@keyframes fm-glisse{from{transform:translateX(60px);opacity:0}}
@media (min-width:1800px){.fm-volet.fixe{position:sticky;top:74px;z-index:1;width:auto;height:calc(100vh - 90px);border-radius:20px;overflow:hidden;box-shadow:var(--ombre-2),0 0 0 1px hsl(var(--trait)) inset;animation:none}.fm-volet.fixe .or-x{display:none}}
.fm-vt{display:flex;align-items:center;gap:12px;padding:14px 16px;background:hsl(var(--carte));box-shadow:0 1px 0 hsl(var(--trait))}
.fm-vt>.v2-vignette,.fm-vt>.fm-vg{width:104px;height:68px;border-radius:12px;overflow:hidden;flex:none}
.fm-vt>span{min-width:0;flex:1}
.fm-vt b{font-size:17px;display:block;letter-spacing:-.01em}.fm-vt small{font-size:12.5px;color:hsl(var(--doux));display:block;margin-top:2px}
.fm-etapes{display:flex;gap:4px;padding:10px 16px;background:hsl(var(--carte));box-shadow:0 1px 0 hsl(var(--trait))}
.fm-etapes span{flex:1;display:grid;gap:3px;font-size:11.5px;font-weight:700;color:hsl(var(--doux));text-align:center}
.fm-etapes span::before{content:"";height:5px;border-radius:3px;background:hsl(var(--trait));transition:background .3s}
.fm-etapes span.fait::before{background:hsl(var(--menthe-fort))}.fm-etapes span.ici{color:hsl(var(--encre))}.fm-etapes span.ici::before{background:hsl(var(--azur))}
.fm-etapes span.refus{color:hsl(var(--rouge))}.fm-etapes span.refus::before{background:hsl(var(--rouge))}
.fm-etapes span em{font-style:normal;font-weight:600;font-size:11px}
.fm-vc{flex:1;overflow:auto;padding:12px;display:grid;gap:12px;align-content:start}
.fm-bloc{border-radius:16px;background:hsl(var(--carte));box-shadow:var(--ombre-1),0 0 0 1px hsl(var(--trait)) inset;overflow:hidden}
.fm-bloc h3{margin:0;padding:10px 14px 6px;font-size:11.5px;font-weight:750;text-transform:uppercase;letter-spacing:.06em;color:hsl(var(--doux));display:flex;align-items:center;gap:8px}
.fm-bloc h3 .r{margin-left:auto;text-transform:none;letter-spacing:0;font-size:12.5px;font-weight:700}
.fm-bloc h3 .r.vert{color:hsl(var(--vert))}.fm-bloc h3 .r.orange{color:hsl(var(--orange))}
.fm-pc{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 14px;border-top:1px solid hsl(var(--trait));font-size:13.5px;animation:or-entree .3s var(--sortie) both}
.fm-pc .o{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:900;background:hsl(var(--gris-doux));color:hsl(var(--doux))}
.fm-pc.ok .o{background:hsl(var(--vert));color:#fff}.fm-pc.dem .o{background:hsl(var(--orange-doux));color:hsl(var(--orange))}.fm-pc.manque .o{background:hsl(var(--rouge-doux));color:hsl(var(--rouge))}
.fm-pc small{display:block;font-size:12px;color:hsl(var(--doux))}
.fm-pc .g{display:flex;gap:6px}
.fm-kv{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid hsl(var(--trait))}
.fm-kv div{padding:9px 12px;border-left:1px solid hsl(var(--trait))}.fm-kv div:first-child{border-left:0}
.fm-kv span{display:block;font-size:11.5px;color:hsl(var(--doux));font-weight:650}.fm-kv b{font-size:16px;font-weight:800}
.fm-kv b.rouge{color:hsl(var(--rouge))}.fm-kv b.vert{color:hsl(var(--vert))}.fm-kv b.orange{color:hsl(var(--orange))}
.fm-hist{padding:4px 14px 10px;display:grid;gap:6px}
.fm-hist div{display:grid;grid-template-columns:56px 1fr;gap:10px;font-size:13px}
.fm-hist time{color:hsl(var(--doux));font-weight:650;font-size:12px}
.fm-msgs{padding:6px 12px 10px;display:grid;gap:8px}
.fm-msgs .mg{max-width:86%;padding:8px 11px;border-radius:14px;font-size:13.5px;line-height:1.4;animation:or-entree .3s var(--sortie) both}
.fm-msgs .mg small{display:block;font-size:11px;color:hsl(var(--doux));margin-top:2px;font-weight:650}
.fm-msgs .mg.moi{justify-self:end;background:hsl(var(--azur-doux))}.fm-msgs .mg.lui{background:hsl(var(--gris-doux))}
.fm-msgs .doux,.fm-bloc .doux{color:hsl(var(--doux))}
.fm-saisie{display:flex;gap:6px;padding:0 12px 12px}
.fm-saisie input{flex:1;min-width:0;height:38px;border:0;border-radius:10px;padding:0 11px;background:hsl(var(--fond));box-shadow:0 0 0 1px hsl(var(--trait-fort)) inset;font-size:13.5px;outline:none}
.fm-saisie input:focus{background:#fff;box-shadow:0 0 0 2px hsl(var(--azur)) inset}
.fm-vp{display:flex;gap:8px;padding:12px 16px;background:hsl(var(--carte));box-shadow:0 -1px 0 hsl(var(--trait));flex-wrap:wrap}
.fm-vp .or-btn{flex:1;height:44px}
.fm-alerte{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;background:hsl(var(--rouge-doux));color:hsl(var(--rouge));font-weight:700;font-size:13.5px}
.fm-choix{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:6px}
.fm-choix input{height:42px;border:0;border-radius:12px;padding:0 10px;font-weight:650;background:hsl(var(--fond));box-shadow:0 0 0 1px hsl(var(--trait-fort)) inset;outline:none}
.fm-choix input:focus{box-shadow:0 0 0 2px hsl(var(--azur)) inset}
.fm-choix .fm-montant{width:150px;font-size:18px;font-weight:800}
.fm-choix .fm-long{flex:1;min-width:200px}

@media (max-width:760px){
  .fm-tete h1{font-size:20px}.fm-cherche{width:100%;order:3;margin-left:0}
  .fm-chif{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.fm-chif::-webkit-scrollbar{display:none}.fm-chif>*{flex:none}
  .fm-board{grid-template-columns:minmax(0,1fr)}.fm-colo{min-height:0}
  .fm-th{display:none}
  .fm-liste{background:none;box-shadow:none;overflow:visible;display:grid;gap:8px}
  .fm-ln{grid-template-columns:64px minmax(0,1fr) auto;gap:4px 10px;padding:10px;border:0;border-radius:16px;background:hsl(var(--carte));box-shadow:var(--ombre-1),0 0 0 1px hsl(var(--trait)) inset}
  .fm-ln>.v2-vignette,.fm-ln>.fm-vg{width:64px;height:46px;grid-row:1/3}
  .fm-ln .cC{grid-column:2}.fm-ln .cM{grid-column:3;grid-row:1}.fm-ln .cV,.fm-ln .cP,.fm-ln .cA{display:none}.fm-ln .cE{grid-column:2/4}.fm-ln .cG{grid-column:1/4;justify-self:stretch}.fm-ln .cG .fm-mini{width:100%;height:38px;justify-content:center}
  .fm-kv{grid-template-columns:repeat(2,1fr)}
  .fm-volet{width:100vw}
}
