/* Chatbot LumiBox (2026-10-08) — layout propre a LumiBox, meme fonctionnement qu'Alexandre de ledco.ca. */
/* z-index de la boite > 10002 : la barre du bas mobile (.navigation--list) passait par-dessus la saisie. */
#lbc-lanceur{position:fixed;right:20px;bottom:20px;z-index:9998;display:flex;align-items:center;gap:10px;padding:10px 18px 10px 10px;
  border:none;border-radius:999px;background:#004686;color:#fff;font:600 15px/1.2 'Poppins',Arial,sans-serif;cursor:pointer;
  box-shadow:0 6px 22px rgba(0,40,90,.35);transition:transform .15s,box-shadow .15s}
#lbc-lanceur:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,40,90,.42)}
#lbc-lanceur .lbc-pastille{width:36px;height:36px;border-radius:50%;background:#00b6ef;display:flex;align-items:center;justify-content:center}
#lbc-lanceur svg{width:20px;height:20px;fill:#fff}
#lbc-lanceur.lbc-cache{display:none}

#lbc-boite{position:fixed;right:20px;bottom:20px;z-index:10050;width:400px;height:min(640px,calc(100vh - 40px));display:none;flex-direction:column;
  background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 16px 48px rgba(0,30,70,.28);font:14px/1.5 'Poppins',Arial,sans-serif;color:#1d2733}
#lbc-boite.lbc-ouvert{display:flex}
#lbc-tete{flex:none;display:flex;align-items:center;gap:12px;padding:14px 14px 14px 16px;background:linear-gradient(135deg,#004686 0%,#0068b3 100%);color:#fff}
#lbc-tete .lbc-avatar{width:40px;height:40px;border-radius:50%;background:#00b6ef;display:flex;align-items:center;justify-content:center;
  font-weight:700;font-size:18px;color:#fff;border:2px solid rgba(255,255,255,.6);flex:none}
#lbc-tete .lbc-qui{flex:1;min-width:0}
#lbc-tete .lbc-nom{font-weight:700;font-size:16px;color:#fff!important;margin:0;text-shadow:none!important}
#lbc-tete .lbc-etat{font-size:12px;opacity:.9;display:flex;align-items:center;gap:6px}
#lbc-tete .lbc-etat:before{content:"";width:8px;height:8px;border-radius:50%;background:#3ddc84}
#lbc-tete button{background:none;border:none;color:#fff!important;cursor:pointer;font-size:20px;line-height:1;padding:6px;border-radius:8px;
  min-width:36px;min-height:36px}
#lbc-tete button:hover{background:rgba(255,255,255,.15)}
#lbc-menu{display:none;position:absolute;top:62px;right:52px;z-index:2;background:#fff;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.18);overflow:hidden}
#lbc-menu.lbc-ouvert{display:block}
#lbc-menu button{display:block;width:100%;text-align:left;background:none;border:none;padding:11px 16px;font:14px 'Poppins',Arial,sans-serif;color:#1d2733;cursor:pointer}
#lbc-menu button:hover{background:#eef6fc}

#lbc-corps{flex:1;overflow-y:auto;padding:16px;background:#f4f7fa;display:flex;flex-direction:column;gap:10px}
.lbc-msg{max-width:86%;padding:10px 14px;border-radius:14px;word-wrap:break-word;overflow-wrap:anywhere}
.lbc-msg.bot{align-self:flex-start;background:#fff;border:1px solid #e1e8ef;border-bottom-left-radius:4px}
.lbc-msg.usr{align-self:flex-end;background:#0068b3;color:#fff;border-bottom-right-radius:4px}
.lbc-msg a{color:#0068b3;text-decoration:underline;word-break:break-all}
.lbc-msg.usr a{color:#fff}
.lbc-points{align-self:flex-start;background:#fff;border:1px solid #e1e8ef;border-radius:14px;padding:12px 16px;display:flex;gap:5px}
.lbc-points span{width:7px;height:7px;border-radius:50%;background:#9fb3c8;animation:lbc-saut 1s infinite}
.lbc-points span:nth-child(2){animation-delay:.15s}.lbc-points span:nth-child(3){animation-delay:.3s}
@keyframes lbc-saut{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-5px)}}

.lbc-cartes{align-self:stretch;display:flex;gap:10px;overflow-x:auto;padding:2px 2px 6px}
.lbc-carte{flex:0 0 200px;background:#fff;border:1px solid #e1e8ef;border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.lbc-carte img{width:100%;height:130px;object-fit:contain;background:#fff;border-bottom:1px solid #eef2f6}
.lbc-carte-corps{padding:10px;display:flex;flex-direction:column;gap:4px;flex:1}
.lbc-carte-nom{font-weight:600;font-size:13px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.lbc-carte-sku{font-size:11px;color:#6b7c8f}
.lbc-carte-btn{margin-top:auto;display:block;text-align:center;background:#004686;color:#fff!important;text-decoration:none!important;border-radius:8px;padding:7px;font-size:13px;font-weight:600}
.lbc-carte-btn:hover{background:#00b6ef}

.lbc-choix{display:flex;flex-wrap:wrap;gap:6px;align-self:flex-start;max-width:95%}
.lbc-choix button,.lbc-action{background:#fff;border:1.5px solid #0068b3;color:#004686;border-radius:999px;padding:8px 13px;min-height:36px;font:13px 'Poppins',Arial,sans-serif;cursor:pointer}
.lbc-choix button:hover,.lbc-action:hover{background:#0068b3;color:#fff}
.lbc-action{align-self:flex-start;font-weight:600}
a.lbc-action{display:inline-block;text-decoration:none!important;color:#004686!important}
a.lbc-action:hover{color:#fff!important}
.lbc-vote{align-self:flex-start;display:flex;gap:4px;margin-top:-4px}
.lbc-vote button{background:none;border:none;cursor:pointer;font-size:14px;opacity:.45;padding:2px 4px}
.lbc-vote button:hover,.lbc-vote button.lbc-choisi{opacity:1}

#lbc-accueil{display:flex;flex-direction:column;gap:9px}
#lbc-accueil .lbc-msg{max-width:100%}
#lbc-accueil input,#lbc-accueil textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #cdd8e3;border-radius:10px;font:14px 'Poppins',Arial,sans-serif;background:#fff}
#lbc-accueil input:focus,#lbc-accueil textarea:focus,#lbc-saisie textarea:focus{outline:none;border-color:#00b6ef;box-shadow:0 0 0 3px rgba(0,182,239,.18)}
#lbc-accueil textarea{resize:vertical;min-height:70px}
#lbc-accueil input::placeholder,#lbc-accueil textarea::placeholder,#lbc-saisie textarea::placeholder{color:#5f6f7f;opacity:1}
#lbc-accueil .lbc-demarrer{background:#004686;color:#fff;border:none;border-radius:10px;padding:12px;font:600 15px 'Poppins',Arial,sans-serif;cursor:pointer}
#lbc-accueil .lbc-demarrer:hover{background:#00b6ef}
#lbc-accueil .lbc-erreur{color:#c0392b;font-size:12px;display:none}
.lbc-note{font-size:11.5px;color:#4f6071;text-align:center}

#lbc-saisie{flex:none;display:flex;gap:8px;align-items:flex-end;padding:10px 12px;border-top:1px solid #e1e8ef;background:#fff}
#lbc-saisie textarea{flex:1;resize:none;max-height:110px;min-height:40px;padding:9px 12px;border:1px solid #cdd8e3;border-radius:12px;font:14px 'Poppins',Arial,sans-serif}
#lbc-saisie button{flex:none;width:42px;height:42px;border:none;border-radius:50%;background:#0068b3;cursor:pointer;display:flex;align-items:center;justify-content:center}
#lbc-saisie button:hover{background:#004686}
#lbc-saisie button svg{width:18px;height:18px;fill:#fff}
#lbc-saisie.lbc-cache{display:none}

/* Mobile/tablette : barre du bas de 71 px (lumibox-pages.css) — le lanceur et la boite passent au-dessus. */
@media (max-width:991.98px){
  #lbc-lanceur{bottom:calc(71px + 12px + env(safe-area-inset-bottom,0px));right:16px}
  #lbc-boite{bottom:calc(71px + 12px + env(safe-area-inset-bottom,0px));height:min(640px,calc(100vh - 71px - 36px))}
}
@media (max-width:520px){
  #lbc-boite{right:0;bottom:0;width:100%;height:100%;max-height:100dvh;border-radius:0}
  #lbc-lanceur .lbc-texte{display:none}
  #lbc-lanceur{padding:8px}
  /* 16 px : sous cette taille, iOS zoome la page des qu'on touche un champ (audit 08-10) */
  #lbc-accueil input,#lbc-accueil textarea,#lbc-saisie textarea{font-size:16px}
}
