/* CWS Guide widget — themed through the site's CSS variables. */
.cg-launch{position:fixed;right:14px;bottom:16px;z-index:200;display:inline-flex;align-items:center;gap:9px;padding:11px 16px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-weight:700;font-size:.78rem;cursor:pointer;box-shadow:var(--shadow);transition:transform .28s var(--ease),border-color .28s}
.cg-launch:hover{transform:translateY(-3px);border-color:var(--accent)}
.cg-launch[hidden],.cg-panel[hidden],.cg-invite[hidden]{display:none}
.cg-dot{width:9px;height:9px;border-radius:50%;background:var(--muted)}
.cg-launch.on .cg-dot{background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.cg-invite{position:fixed;right:14px;bottom:70px;z-index:199;max-width:260px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow);font-size:.85rem;animation:rise .4s var(--ease) both}
.cg-invite p{margin-bottom:10px}.cg-invite div{display:flex;gap:8px;align-items:center}
.cg-yes{background:var(--accent);color:var(--accent-ink);border:0;border-radius:var(--radius);padding:8px 14px;font-weight:700;font-size:.78rem;cursor:pointer}
.cg-no{background:transparent;border:0;font-size:1.3rem;cursor:pointer;color:var(--muted);margin-left:auto;line-height:1}
.cg-panel{position:fixed;right:14px;bottom:14px;z-index:210;width:min(380px,calc(100vw - 28px));height:min(560px,calc(100vh - 100px));display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 18px 50px rgba(0,0,0,.35);overflow:hidden;animation:rise .3s var(--ease) both}
.cg-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border);background:var(--surface-2)}
.cg-title{display:flex;gap:10px;align-items:center;min-width:0}.cg-title strong{display:block;font-size:.92rem;line-height:1.2}.cg-sub{display:block;font-size:.7rem;color:var(--muted)}
.cg-avatar{width:34px;height:34px;border-radius:var(--radius);background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-weight:800;font-size:.78rem;flex-shrink:0}
.cg-ctrl{display:flex;gap:6px;align-items:center}
.cg-ctrl button,.cg-mic,.cg-send{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--radius);border:1px solid var(--border-strong);background:transparent;cursor:pointer;transition:all .25s}
.cg-ctrl button:hover,.cg-mic:hover{background:var(--hover)}
.cg-ctrl svg,.cg-mic svg,.cg-send svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.cg-voice.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.cg-ctrl .cg-power{width:auto;padding:0 8px 0 10px;gap:8px;display:flex;align-items:center;background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:800;font-size:.7rem}
.cg-knob{width:10px;height:10px;border-radius:50%;background:var(--accent)}
.cg-log{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}
.cg-msg{max-width:88%;padding:10px 13px;border-radius:10px;font-size:.86rem;line-height:1.55}
.cg-msg p{margin:0}
.cg-bot{background:var(--surface-2);border:1px solid var(--border);align-self:flex-start;border-bottom-left-radius:2px}
.cg-user{background:var(--accent);color:var(--accent-ink);align-self:flex-end;border-bottom-right-radius:2px}
.cg-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.cg-links a{font-size:.74rem;font-weight:700;text-decoration:none;border:1px solid var(--accent);color:var(--accent);padding:5px 10px;border-radius:999px;transition:all .25s}
.cg-links a:hover{background:var(--accent);color:var(--accent-ink)}
.cg-chips{display:flex;gap:6px;overflow-x:auto;padding:0 14px 10px;scrollbar-width:none}
.cg-chips::-webkit-scrollbar{display:none}
.cg-chips button{flex:none;border:1px solid var(--border-strong);background:transparent;border-radius:999px;padding:6px 12px;font-size:.74rem;cursor:pointer;white-space:nowrap}
.cg-chips button:hover{background:var(--hover)}
.cg-form{display:flex;gap:8px;padding:10px 14px 6px;border-top:1px solid var(--border)}
.cg-input{flex:1;min-width:0;padding:9px 12px;font-size:.88rem}
.cg-send{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.cg-mic[aria-pressed="true"]{background:var(--danger);border-color:var(--danger);color:#fff;animation:cgPulse 1.4s ease-in-out infinite}
.cg-status{min-height:1.4em;padding:0 14px 8px;font-size:.72rem;color:var(--muted)}
.cg-panel[data-state="listening"] .cg-status{color:var(--danger);font-weight:700}
.cg-stop{margin:0 14px 10px;border:1px solid var(--border-strong);background:transparent;border-radius:var(--radius);padding:6px;font-size:.74rem;cursor:pointer}
@keyframes cgPulse{0%,100%{box-shadow:0 0 0 0 rgba(255,100,100,.5)}50%{box-shadow:0 0 0 8px rgba(255,100,100,0)}}
@media (max-width:560px){
  .cg-panel{right:8px;left:8px;bottom:8px;width:auto;height:min(72vh,520px)}
  .cg-launch{bottom:14px;right:10px;padding:10px 13px}.cg-launch-text{font-size:.72rem}
  .cg-invite{right:10px;bottom:64px}
}
@media (prefers-reduced-motion:reduce){.cg-mic[aria-pressed="true"]{animation:none}.cg-log{scroll-behavior:auto}}
