/* =====================================================================
   Crazy Bob - chatbot "Aiuto" (Plugin > Chatbot del gestionale)
   ===================================================================== */
.cbc{--cbc:#1e73be;position:fixed;bottom:22px;z-index:140;font:14px/1.5 var(--f-body,"Open Sans",Arial,sans-serif);color:#292d35}
.cbc--destra{right:22px}
.cbc--sinistra{left:22px}
.cbc-btn{display:flex;align-items:center;gap:9px;border:0;border-radius:40px;background:var(--cbc);color:#fff;
  font:600 15px/1 var(--f-head,"Fira Sans",Arial,sans-serif);padding:14px 22px 14px 18px;cursor:pointer;
  box-shadow:0 8px 24px rgba(0,0,0,.22);transition:transform .2s,box-shadow .2s,filter .2s}
.cbc-btn i{font-size:19px}
.cbc-btn:hover{transform:translateY(-2px);filter:brightness(1.08);box-shadow:0 12px 28px rgba(0,0,0,.26)}
.cbc.is-open .cbc-btn{transform:scale(.92);opacity:.0;pointer-events:none}
.has-cbc--destra .go-top{bottom:92px}

.cbc-panel{position:absolute;bottom:0;width:370px;height:min(560px,calc(100vh - 44px));display:flex;flex-direction:column;
  background:#fff;border-radius:18px;box-shadow:0 18px 50px rgba(15,23,42,.28);overflow:hidden;
  opacity:0;transform:translateY(14px) scale(.98);transform-origin:bottom right;transition:opacity .2s,transform .2s}
.cbc--destra .cbc-panel{right:0}
.cbc--sinistra .cbc-panel{left:0;transform-origin:bottom left}
.cbc.is-open .cbc-panel{opacity:1;transform:none}
.cbc-panel[hidden]{display:none}

.cbc-head{display:flex;align-items:center;gap:11px;background:var(--cbc);color:#fff;padding:14px 12px 14px 16px}
.cbc-av{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.cbc-tit{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}
.cbc-tit b{font:700 16px/1.2 var(--f-head,"Fira Sans",Arial,sans-serif)}
.cbc-tit small{opacity:.85;font-size:12.5px}
.cbc-x,.cbc-nuova{background:none;border:0;color:#fff;opacity:.8;font-size:17px;padding:6px;border-radius:8px;cursor:pointer;line-height:1}
.cbc-x:hover,.cbc-nuova:hover{opacity:1;background:rgba(255,255,255,.15)}
.cbc-nuova{font-size:16px}

.cbc-log{flex:1;overflow-y:auto;padding:16px 14px 8px;background:#f5f6f8;scroll-behavior:smooth}
.cbc-m{display:flex;flex-direction:column;margin-bottom:12px;max-width:100%}
.cbc-m--tu{align-items:flex-end}
.cbc-m--bot{align-items:flex-start}
.cbc-b{max-width:88%;padding:10px 13px;border-radius:16px;word-wrap:break-word;overflow-wrap:anywhere}
.cbc-m--tu .cbc-b{background:var(--cbc);color:#fff;border-bottom-right-radius:5px}
.cbc-m--bot .cbc-b{background:#fff;border:1px solid #e7e9ee;border-bottom-left-radius:5px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.cbc-b p{margin:0 0 6px}
.cbc-b p:last-child{margin-bottom:0}
.cbc-b ul{margin:4px 0 6px;padding-left:18px}
.cbc-b li{margin-bottom:3px}
.cbc-b a{color:var(--cbc);text-decoration:underline;text-underline-offset:2px}
.cbc-b small{color:#6b6f78}
.cbc-q{font:700 13px/1.3 var(--f-head,"Fira Sans",Arial,sans-serif);color:#6b6f78;margin-bottom:5px}
.cbc-link{display:inline-flex!important;align-items:center;gap:6px;margin-top:9px;background:var(--cbc);color:#fff!important;
  text-decoration:none!important;border-radius:30px;padding:8px 15px;font:600 13px/1 var(--f-head,"Fira Sans",Arial,sans-serif)}
.cbc-link:hover{filter:brightness(1.1)}
.cbc-pagine{display:flex;flex-direction:column;gap:7px;margin-top:9px}
.cbc-pagine a{display:block;border:1px solid #e7e9ee;border-radius:10px;padding:8px 10px;text-decoration:none!important;color:#292d35!important;background:#fafbfc}
.cbc-pagine a:hover{border-color:var(--cbc)}
.cbc-pagine b{display:block;color:var(--cbc);font-size:13.5px}
.cbc-pagine span{display:block;font-size:12.5px;color:#6b6f78;line-height:1.4}
.cbc-cont{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.cbc-cont a{display:inline-flex;align-items:center;gap:6px;border:1px solid #dfe2e8;border-radius:30px;padding:6px 12px;
  font-size:13px;text-decoration:none!important;color:#292d35!important;background:#fff}
.cbc-cont a:hover{border-color:var(--cbc);color:var(--cbc)!important}
.cbc-cont i{color:var(--cbc)}
.cbc-voto{display:flex;align-items:center;gap:4px;margin:5px 0 0 4px;font-size:12px;color:#8a8f98}
.cbc-voto button{background:none;border:0;color:#8a8f98;font-size:14px;padding:2px 5px;border-radius:6px;cursor:pointer}
.cbc-voto button:hover{color:var(--cbc);background:#e9edf3}
.cbc-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;max-width:100%}
.cbc-chips small{flex-basis:100%;color:#8a8f98;font-size:12px;margin:0 0 -1px 2px}
.cbc-chips button{background:#fff;border:1.5px solid var(--cbc);color:var(--cbc);border-radius:30px;padding:6px 13px;
  font:600 13px/1.25 var(--f-body,"Open Sans",Arial,sans-serif);cursor:pointer;text-align:left;transition:background .15s,color .15s}
.cbc-chips button:hover{background:var(--cbc);color:#fff}
.cbc-typing .cbc-b{display:flex;gap:4px;padding:13px 15px}
.cbc-typing i{width:7px;height:7px;border-radius:50%;background:#a3a8b2;animation:cbcDot 1.1s infinite}
.cbc-typing i:nth-child(2){animation-delay:.15s}
.cbc-typing i:nth-child(3){animation-delay:.3s}
@keyframes cbcDot{0%,60%,100%{transform:none;opacity:.5}30%{transform:translateY(-4px);opacity:1}}

.cbc-form{display:flex;gap:8px;padding:10px 12px;border-top:1px solid #eceef2;background:#fff}
.cbc-form input{flex:1;min-width:0;border:1.5px solid #dfe2e8;border-radius:30px;padding:10px 15px;font:inherit;font-size:15px;outline:none}
.cbc-form input:focus{border-color:var(--cbc)}
.cbc-form button{width:42px;height:42px;flex-shrink:0;border:0;border-radius:50%;background:var(--cbc);color:#fff;font-size:16px;cursor:pointer}
.cbc-form button:hover{filter:brightness(1.1)}

@media (max-width:599px){
  .cbc{bottom:14px}
  .cbc--destra{right:14px}
  .cbc--sinistra{left:14px}
  .cbc-btn{padding:12px 18px 12px 15px;font-size:14px}
  .cbc-panel{position:fixed;inset:0;width:auto;height:100%;border-radius:0;transform:translateY(20px)}
  .cbc.is-open .cbc-panel{transform:none}
  .has-cbc--destra .go-top{bottom:76px;right:14px}
}
@media (prefers-reduced-motion:reduce){.cbc-btn,.cbc-panel,.cbc-typing i{transition:none;animation:none}}
