/* Web concierge — demo receptionist chat. External stylesheet only (strict CSP). */
.cc-launch{position:fixed;right:20px;bottom:20px;z-index:60;display:flex;align-items:center;gap:.6rem;border:0;border-radius:999px;padding:.85rem 1.2rem;background:var(--blue,#005efc);color:#fff;font:600 15px/1 inherit;font-family:inherit;box-shadow:0 8px 24px rgba(1,29,63,.28);cursor:pointer}
.cc-launch:hover{background:var(--blue-press,#004ccf)}
.cc-launch:focus-visible,.cc-panel button:focus-visible,.cc-input:focus-visible{outline:3px solid #8db6ff;outline-offset:2px}
.cc-dot{width:9px;height:9px;border-radius:50%;background:#46e0a8;box-shadow:0 0 0 3px rgba(70,224,168,.3)}
.cc-panel{position:fixed;right:20px;bottom:20px;z-index:61;width:min(400px,calc(100vw - 24px));height:min(640px,calc(100vh - 40px));display:none;flex-direction:column;background:#fff;color:var(--ink,#011d3f);border-radius:18px;overflow:hidden;box-shadow:0 18px 60px rgba(1,29,63,.35);font-family:inherit}
.cc-panel.open{display:flex}
.cc-head{display:flex;align-items:center;gap:.7rem;padding:.9rem 1rem;background:var(--ink,#011d3f);color:#fff}
.cc-avatar{width:36px;height:36px;border-radius:50%;background:var(--blue,#005efc);display:grid;place-items:center;font-weight:700}
.cc-title{flex:1;min-width:0}
.cc-title b{display:block;font-size:15px}
.cc-title span{display:block;font-size:12px;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-x{background:transparent;border:0;color:#fff;font-size:22px;cursor:pointer;padding:.2rem .5rem;border-radius:8px}
.cc-picker{display:flex;gap:.4rem;flex-wrap:wrap;padding:.7rem 1rem;border-bottom:1px solid #e3e9f3;background:#f6f9ff}
.cc-chip{border:1px solid #c9d6ee;background:#fff;color:var(--ink,#011d3f);border-radius:999px;padding:.4rem .8rem;font:600 13px inherit;font-family:inherit;cursor:pointer}
.cc-chip[aria-pressed="true"]{background:var(--blue,#005efc);border-color:var(--blue,#005efc);color:#fff}
.cc-log{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.6rem;background:#fff}
.cc-msg{max-width:86%;padding:.6rem .85rem;border-radius:14px;font-size:15px;line-height:1.4;white-space:pre-wrap;word-wrap:break-word}
.cc-msg.bot{align-self:flex-start;background:#eef3fb}
.cc-msg.me{align-self:flex-end;background:var(--blue,#005efc);color:#fff}
.cc-msg.sys{align-self:center;background:transparent;color:#5a6b86;font-size:13px}
.cc-starters{display:flex;gap:.4rem;flex-wrap:wrap;padding:0 1rem .6rem}
.cc-starters .cc-chip{font-weight:500}
.cc-form{display:flex;gap:.5rem;padding:.7rem;border-top:1px solid #e3e9f3;align-items:center}
.cc-input{flex:1;min-width:0;border:1px solid #c9d6ee;border-radius:12px;padding:.65rem .8rem;font:15px inherit;font-family:inherit}
.cc-btn{border:0;border-radius:12px;width:42px;height:42px;display:grid;place-items:center;background:var(--blue,#005efc);color:#fff;cursor:pointer;font-size:18px}
.cc-btn.mic{background:#eef3fb;color:var(--ink,#011d3f)}
.cc-btn.mic.live{background:#e5484d;color:#fff}
.cc-btn[disabled]{opacity:.5;cursor:default}
.cc-foot{font-size:11.5px;color:#5a6b86;text-align:center;padding:0 .8rem .6rem}
.cc-typing{display:inline-flex;gap:4px}
.cc-typing i{width:6px;height:6px;border-radius:50%;background:#7b8ba8;animation:cc-b 1s infinite}
.cc-typing i:nth-child(2){animation-delay:.15s}.cc-typing i:nth-child(3){animation-delay:.3s}
@keyframes cc-b{0%,80%,100%{opacity:.3}40%{opacity:1}}
@media (prefers-reduced-motion:reduce){.cc-typing i{animation:none}}
@media (max-width:520px){.cc-panel{right:0;bottom:0;width:100vw;height:100dvh;border-radius:0}.cc-launch{right:12px;bottom:12px}}

.cc-preview{align-self:stretch;border:1px dashed #b7c6e2;border-radius:12px;padding:.6rem .7rem;background:#fafcff;display:flex;flex-direction:column;gap:.45rem;font-size:13px}
.cc-pv-h{color:#5a6b86;font-size:12px}
.cc-pv-sms,.cc-pv-cal{display:flex;flex-direction:column;gap:2px;padding:.45rem .6rem;border-radius:10px;background:#fff;border:1px solid #e3e9f3}
.cc-pv-sms b,.cc-pv-cal b{font-size:11.5px;color:var(--blue,#005efc);text-transform:uppercase;letter-spacing:.03em}
