/* Lease Lane — panneau de Cléo (/refonte/kit/cleo.js), d'après le panneau du site (src/proto/cleo-options.jsx) : fond blanc, filets fins, carrés marine. */
.clv{width:min(400px,calc(100vw - 48px));height:min(620px,calc(100vh - 140px));height:min(620px,calc(100dvh - 140px));display:flex;flex-direction:column;background:#fff;border:1px solid rgba(12,33,71,.12);border-radius:2px;box-shadow:0 30px 70px -28px rgba(12,33,71,.55);color:var(--gris-700);transform-origin:100% 100%;animation:clv-in .4s cubic-bezier(.22,1,.36,1) both}
.clv[hidden]{display:none}
@keyframes clv-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.cl-flot.clv-ouvert .ct{display:none}
.clv-tete{display:flex;align-items:center;gap:12px;padding:16px 16px 14px 22px;border-bottom:1px solid var(--filet)}
.clv-av{position:relative;flex:none}
.clv-av img{display:block;width:40px;height:40px;border-radius:2px;object-fit:cover}
.clv-av i{position:absolute;right:-3px;bottom:-3px;width:11px;height:11px;border:2px solid #fff;border-radius:50%;background:var(--s-vert,#2E9E5B)}
.clv-tete b{flex:1;min-width:0;font-size:14px;font-weight:600;color:var(--marine-900)}
.clv-x{display:grid;place-items:center;width:44px;height:44px;margin:-6px -6px -6px 0;border:0;background:none;color:var(--marine-900);cursor:pointer;border-radius:2px}
.clv-x svg{width:20px;height:20px}
.clv-x:hover{background:var(--gris-025)}
.clv-corps{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px 22px 16px}
.clv-h{margin:0 0 18px;font-size:19px;font-weight:700;line-height:1.3;letter-spacing:-.015em;color:var(--marine-900);text-wrap:balance}
/* présentation */
.clv-intro{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100%;text-align:center}
.clv-intro img{width:84px;height:84px;border-radius:2px;object-fit:cover;box-shadow:0 16px 36px -16px rgba(12,33,71,.5)}
.clv-intro b{margin-top:18px;font-size:22px;font-weight:700;color:var(--marine-900)}
.clv-intro small{margin-top:6px;font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--bleu-600)}
.clv-intro p{max-width:30ch;margin:18px 0 0;font-size:14px;line-height:1.6;color:var(--gris-600)}
.clv-passer{min-height:44px;margin-top:22px;padding:0 22px;border:1px solid var(--marine-900);border-radius:2px;background:var(--marine-900);color:#fff;font:600 14px Poppins,system-ui,sans-serif;cursor:pointer}
.clv-passer:hover{background:var(--marine-700,#1B3563)}
/* listes à filets, carré marine à droite */
.clv-ls{border-top:1px solid var(--filet)}
.clv-l{display:grid;grid-template-columns:minmax(0,1fr) 29px;align-items:center;gap:12px;width:100%;min-height:46px;padding:6px 0;border:0;border-bottom:1px solid var(--filet);background:none;color:var(--marine-900);font:600 13.5px/1.4 Poppins,system-ui,sans-serif;text-align:left;text-decoration:none;cursor:pointer}
.clv-c{display:grid;place-items:center;width:29px;height:29px;border-radius:2px;background:var(--marine-900);color:#fff;transition:transform .2s var(--e)}
.clv-c svg{width:14px;height:14px}
.clv-l:hover .clv-c{transform:translateX(2px)}
.clv-l:focus-visible{outline:2px solid var(--bleu-500);outline-offset:2px}
.clv-f{font-weight:500}
.clv-f .clv-c{background:var(--bleu-025,#EEF4FB);color:var(--bleu-600)}
.clv-urg .clv-c{background:var(--s-rouge,#C8352B)}
.clv-g{margin:22px 0 10px;font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gris-600)}
.clv-vous{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;margin:-8px 0 18px;font-size:13px;color:var(--gris-600)}
.clv-vous b{font-weight:600;color:var(--marine-900)}
.clv-vous button{min-height:28px;padding:0 4px;border:0;background:none;color:var(--bleu-600);font:600 13px Poppins,system-ui,sans-serif;cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:transparent}
.clv-vous button:hover{text-decoration-color:currentColor}
/* fil de conversation */
.clv-sujet{position:sticky;top:-20px;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-20px -22px 16px;padding:12px 22px;background:#fff;border-bottom:1px solid var(--filet)}
.clv-sujet span{display:grid;gap:2px;min-width:0;font-size:13.5px;line-height:1.35;color:var(--marine-900)}
.clv-sujet small{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gris-600)}
.clv-sujet button{display:inline-flex;align-items:center;gap:6px;flex:none;min-height:32px;padding:0 2px;border:0;background:none;color:var(--bleu-600);font:600 13px Poppins,system-ui,sans-serif;cursor:pointer}
.clv-sujet button svg{width:14px;height:14px}
.clv-fil{display:flex;flex-direction:column;gap:10px}
.clv-m{align-self:flex-start;max-width:88%;margin:0;padding:10px 14px;border-radius:2px;background:var(--gris-025);font-size:14px;line-height:1.55;color:var(--gris-700)}
.clv-moi{align-self:flex-end;background:var(--marine-900);color:#fff}
.clv-note{background:none;padding:0 2px;font-size:12.5px;color:var(--gris-600)}
.clv-confirme{border-left:3px solid var(--s-vert,#2E9E5B)}
.clv-ecrit{display:flex;gap:4px;align-self:flex-start;margin:0;padding:14px;border-radius:2px;background:var(--gris-025)}
.clv-ecrit i{width:6px;height:6px;border-radius:50%;background:var(--gris-500);animation:clv-pt 1s infinite ease-in-out}
.clv-ecrit i:nth-child(2){animation-delay:.15s}.clv-ecrit i:nth-child(3){animation-delay:.3s}
@keyframes clv-pt{0%,80%,100%{opacity:.3;transform:none}40%{opacity:1;transform:translateY(-3px)}}
.clv-lien{display:flex;align-items:center;justify-content:space-between;gap:12px;align-self:stretch;min-height:46px;padding:0 14px;border:1px solid var(--marine-900);border-radius:2px;color:var(--marine-900);font-size:13.5px;font-weight:600;text-decoration:none;transition:background-color .2s,color .2s}
.clv-lien svg{width:16px;height:16px;flex:none}
.clv-lien:hover{background:var(--marine-900);color:#fff}
.clv-carte-urg{display:flex;align-items:center;gap:12px;align-self:stretch;padding:12px 14px;border-radius:2px;background:var(--marine-900);color:#fff;text-decoration:none}
.clv-carte-urg svg{width:20px;height:20px;flex:none;color:var(--bleu-200,#B9D0EE)}
.clv-carte-urg small{display:block;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--bleu-200,#B9D0EE)}
.clv-carte-urg b{font-size:17px;font-weight:600}
.clv-res{align-self:stretch;border:1px solid var(--filet);border-radius:2px;padding:12px 14px}
.clv-res p{margin:0 0 8px;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gris-600)}
.clv-res dl{margin:0}
.clv-res div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;padding:7px 0;border-top:1px solid var(--filet);font-size:13px}
.clv-res dt{font-weight:600;color:var(--marine-900)}.clv-res dd{margin:0;color:var(--gris-700)}
.clv-sugg{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.clv-sugg button{min-height:36px;padding:0 12px;border:1px solid var(--gris-200);border-radius:2px;background:#fff;color:var(--marine-900);font:600 13px Poppins,system-ui,sans-serif;cursor:pointer;transition:border-color .2s}
.clv-sugg button:hover{border-color:var(--marine-900)}
.clv-form{display:grid;gap:12px;align-self:stretch;padding:16px;border:1px solid var(--filet);border-radius:2px}
.clv-form-t{margin:0;font-size:14px;font-weight:600;color:var(--marine-900)}
.clv-form label{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 4px;font-size:13px;font-weight:600;color:var(--marine-900)}
.clv-form label input:not([type=checkbox]){flex:1 0 100%;min-width:0}
.clv-form label span{font-weight:400;color:var(--gris-600)}
.clv-form input:not([type=checkbox]){min-height:44px;padding:0 12px;border:1px solid var(--gris-300,#C5CDD8);border-radius:2px;font:400 15px Poppins,system-ui,sans-serif;color:var(--marine-900);background:#fff}
.clv-form input:focus-visible{outline:2px solid var(--bleu-500);outline-offset:1px}
.clv-form .clv-ok{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;font-weight:400}
.clv-ok input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--marine-900)}
.clv-ok span{font-size:12.5px;line-height:1.5;color:var(--gris-700)}
.clv-ok a{color:var(--bleu-600);font-weight:600}
.clv-err{margin:0;font-size:13px;color:var(--s-rouge,#C8352B)}
.clv-btn{justify-self:start;min-height:44px;padding:0 20px;border:0;border-radius:2px;background:var(--marine-900);color:#fff;font:600 14px Poppins,system-ui,sans-serif;cursor:pointer}
/* saisie et pied */
.clv-saisie{display:flex;align-items:flex-end;gap:8px;margin:0 16px;padding:6px 6px 6px 14px;border-radius:2px;background:var(--gris-025)}
.clv-saisie textarea{flex:1;min-width:0;min-height:32px;max-height:96px;padding:6px 0;border:0;background:none;resize:none;font:400 14px/1.45 Poppins,system-ui,sans-serif;color:var(--marine-900);outline:none}
.clv-saisie:focus-within{box-shadow:inset 0 0 0 1px var(--bleu-500)}
.clv-saisie button{display:grid;place-items:center;flex:none;width:36px;height:36px;border:0;border-radius:2px;background:var(--marine-900);color:#fff;cursor:pointer}
.clv-saisie button svg{width:16px;height:16px}
.clv-pied{display:flex;justify-content:space-between;gap:12px;padding:8px 20px 12px}
.clv-pied a{display:inline-flex;align-items:center;min-height:32px;font-size:12px;font-weight:600;color:var(--bleu-600);text-decoration:none}
.clv-pied a:hover{text-decoration:underline;text-underline-offset:3px}
.clv-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:560px){
  .clv{width:calc(100vw - 32px);height:calc(100vh - 110px);height:calc(100dvh - 110px)}
  .clv-corps{padding:18px 18px 14px}
  .clv-sujet{margin:-18px -18px 14px;padding:12px 18px;top:-18px}
  .clv-saisie{margin:0 12px}
  .clv-pied{padding:6px 16px 10px}
  .clv-saisie textarea{font-size:16px}
}
@media (prefers-reduced-motion:reduce){.clv{animation:none}.clv-c,.clv-lien{transition:none}}
