.chatcorsi-bubble{
  position:fixed;left:16px;bottom:16px;z-index:9999;border:0;background:#fff;color:#fff;
  width:54px;height:54px;border-radius:999px;display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 24px rgba(0,0,0,.25);cursor:pointer
}
.chatcorsi-bubble:hover{opacity:.9}
.chatcorsi-bubble:focus{outline:2px solid #5b9dd9;outline-offset:2px}

.chatcorsi-panel{
  position:fixed;left:16px;bottom:80px;z-index:9999;width:320px;max-width:90vw;background:#fff;color:#111;
  border-radius:16px;box-shadow:0 16px 40px rgba(0,0,0,.25);overflow:hidden;transform:translateY(16px);
  opacity:0;pointer-events:none;transition:.2s ease
}
.chatcorsi-panel.is-open{transform:translateY(0);opacity:1;pointer-events:auto}

.chatcorsi-head{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid #eee}
.chatcorsi-head h3{font-size:21px;line-height:1.2;margin:0}
.chatcorsi-close{background:transparent;border:0;font-size:18px;cursor:pointer;padding:6px;line-height:1}

.chatcorsi-body{padding:12px}
.chatcorsi-intro{font-size:18px;margin:0 0 8px}
.chatcorsi-select{width:100%;padding:10px;border:1px solid #ddd;border-radius:10px;font-size:18px}

.chatcorsi-results{margin-top:10px;max-height:300px;overflow:auto}
.chatcorsi-list{list-style:none;margin:8px 0 0;padding:0}
.chatcorsi-list li{margin:0;padding:0}
.chatcorsi-list a{display:block;padding:8px 10px;border-radius:8px;text-decoration:none;color:#111}
.chatcorsi-list a:hover{background:#f6f6f6}

.chatcorsi-status{font-size:13px;color:#666;margin-top:8px}
@media (max-width:480px){ .chatcorsi-panel{width:92vw} }
