
#cg-chat header{touch-action:none;cursor:grab;user-select:none}#cg-chat header.cg-dragging{cursor:grabbing}#cg-chat.cg-full header{cursor:default}

#cg-launch,#cg-chat{--cg-edge:max(28px,env(safe-area-inset-right),env(safe-area-inset-bottom))}
#cg-launch{position:fixed;right:var(--cg-edge);bottom:var(--cg-edge);z-index:9000;min-height:50px;padding:13px 24px;border:1px solid #6796ff80;border-radius:26px;color:#fff;background:linear-gradient(110deg,#116bbb,#5651bf,#177ab9,#6551ca);background-size:300% 100%;animation:cg-shimmer 9s ease-in-out infinite alternate;font:600 16px/1.5 system-ui;cursor:pointer;box-shadow:0 8px 30px #14275040;transform:none!important;transition:filter .2s}
#cg-launch:hover{filter:brightness(1.12)}
#cg-launch[hidden]{display:none!important}
#cg-launch{background-image:linear-gradient(110deg,#087de0,#6542db,#0fa3c8,#8147d5,#087de0);background-size:400% 100%;animation-duration:5s;isolation:isolate;overflow:hidden}
#cg-launch:before{content:"";position:absolute;inset:-50%;z-index:-1;background:linear-gradient(110deg,transparent 35%,#ffffff38 49%,transparent 63%);transform:translateX(-35%);animation:cg-launch-sheen 4.5s ease-in-out infinite}
#cg-launch:hover{animation-duration:1.8s;filter:brightness(1.15)}#cg-launch:hover:before{animation-duration:1.6s}
@keyframes cg-launch-sheen{0%{transform:translateX(-40%) rotate(10deg)}100%{transform:translateX(40%) rotate(10deg)}}
#cg-chat{--cg-bg:#111a2c;--cg-fg:#edf2ff;--cg-muted:#a8b6d0;--cg-line:#58719955;--cg-bubble:#1c2940;position:fixed;right:var(--cg-edge);bottom:calc(var(--cg-edge) + 64px);z-index:9001;box-sizing:border-box;width:min(460px,calc(100vw - var(--cg-edge) * 2));height:min(650px,calc(100dvh - var(--cg-edge) - 80px));display:flex;flex-direction:column;border:1px solid var(--cg-line);border-radius:22px;overflow:hidden;background:var(--cg-bg);color:var(--cg-fg);box-shadow:0 18px 65px #0005;font:400 14px/1.65 system-ui;text-align:left;color-scheme:dark}
:root[data-theme=light] #cg-chat{--cg-bg:#f7f9ff;--cg-fg:#182a45;--cg-muted:#546882;--cg-line:#a9bfdf80;--cg-bubble:#e9effa;color-scheme:light}
#cg-chat[hidden]{display:none!important}
@media(max-width:760px),(hover:none) and (pointer:coarse){#cg-launch,#cg-chat,[data-helper-preview]{display:none!important}}
#cg-chat.cg-full{inset:12px;width:auto;height:auto}
#cg-chat header{position:relative;flex-shrink:0;display:flex;align-items:center;gap:6px;padding:16px;background:linear-gradient(115deg,#254e83dd,#51407bdd,#1c668bdd,#51407bdd);background-size:300% 100%;animation:cg-shimmer 11s ease-in-out infinite alternate;color:#fff;border-bottom:1px solid #9ab7ff33}
.cg-heading{flex:1;min-width:0}.cg-heading strong{display:block;font-size:17px;line-height:1.4}.cg-heading small{display:block;font-size:12px;font-weight:400;opacity:.9}
#cg-chat button{box-sizing:border-box;cursor:pointer;color:inherit;background:transparent;border:1px solid var(--cg-line);border-radius:11px;font:400 13px system-ui;padding:9px 13px;transform:none!important;box-shadow:none;transition:background .2s,border-color .2s,opacity .2s;min-width:0}
#cg-chat .cg-icon{flex:0 0 auto;display:inline-grid;place-items:center;width:36px;height:36px;padding:0;line-height:1;border-radius:11px}
#cg-chat .cg-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s;pointer-events:none}
#cg-chat .cg-icon:hover{background:#729bce20;border-color:#84baff80}#cg-chat .cg-icon:hover svg{transform:scale(1.15)}#cg-chat button:disabled{cursor:default;opacity:.55}#cg-chat .cg-icon:disabled:hover svg{transform:none}
#cg-chat button:focus-visible,#cg-launch:focus-visible,#cg-input:focus-visible,#cg-log:focus-visible{outline:2px solid #5cadff;outline-offset:-3px}
#cg-log{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:18px;scrollbar-width:thin;scrollbar-color:#527ba5 var(--cg-bg);scrollbar-gutter:stable}
#cg-log::-webkit-scrollbar{width:6px}#cg-log::-webkit-scrollbar-track{background:transparent}#cg-log::-webkit-scrollbar-thumb{border-radius:8px;background:#527ba5}#cg-log::-webkit-scrollbar-button{display:none}
.cg-message{position:relative;padding:14px 16px;margin:0 0 14px;background:var(--cg-bubble);border:1px solid var(--cg-line);border-radius:16px 16px 16px 5px;overflow-wrap:anywhere;font-weight:400;animation:cg-appear .22s ease-out}
.cg-message.cg-user{margin-left:38px;border-radius:16px 16px 5px 16px;background:color-mix(in srgb,#288de9 14%,var(--cg-bg))}
.cg-text{white-space:pre-wrap}.cg-text a{color:#78bdff;text-decoration:underline;text-underline-offset:3px}:root[data-theme=light] .cg-text a{color:#1858a0}
.cg-thinking{display:flex;align-items:center;gap:7px;min-height:26px;color:var(--cg-muted);font-size:12px}.cg-thinking i{width:5px;height:5px;border-radius:50%;background:#6daef3;animation:cg-dot 1.15s infinite}.cg-thinking i:nth-child(2){animation-delay:.16s}.cg-thinking i:nth-child(3){animation-delay:.32s}.cg-thinking span{margin-left:4px}
.cg-typing .cg-text:after{content:"";display:inline-block;width:2px;height:1em;background:#69b6ff;margin-left:3px;vertical-align:-2px;animation:cg-caret .85s steps(2) infinite}
#cg-form{flex-shrink:0;margin:0;padding:12px;background:var(--cg-bg);border-top:1px solid var(--cg-line)}.cg-compose{display:flex;align-items:center;gap:9px}
#cg-input{box-sizing:border-box;min-width:0;width:0;flex:1;height:44px;margin:0;padding:10px 12px;border:1px solid var(--cg-line);border-radius:12px;background:var(--cg-bubble);color:var(--cg-fg);font:400 14px/1.5 system-ui}#cg-input::placeholder{color:var(--cg-muted)}
#cg-chat .cg-send{width:44px;height:44px;border-radius:12px;background:#428be818;border-color:#5a92d066;color:#86c2ff}#cg-chat .cg-send:hover{background:#267edc;color:#fff;border-color:#6cb8ff}:root[data-theme=light] #cg-chat .cg-send{color:#225f9e}:root[data-theme=light] #cg-chat .cg-send:hover{color:#fff}
.cg-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap;border:0}
@keyframes cg-shimmer{0%{background-position:0% 50%}100%{background-position:100% 50%}}@keyframes cg-dot{0%,70%,100%{opacity:.3;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}@keyframes cg-caret{to{opacity:0}}@keyframes cg-appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:520px){#cg-launch,#cg-chat{--cg-edge:max(20px,env(safe-area-inset-right),env(safe-area-inset-bottom))}#cg-chat{height:min(620px,calc(100dvh - var(--cg-edge) - 80px))}#cg-launch{min-height:48px;padding:11px 21px}#cg-chat header{padding:12px;gap:4px}#cg-chat .cg-icon{width:34px;height:34px}.cg-heading strong{font-size:16px}#cg-log{padding:12px}.cg-message{padding:12px}#cg-input{font-size:16px}}
@media(prefers-reduced-motion:reduce){#cg-launch,#cg-chat header,.cg-message,.cg-thinking i,.cg-typing .cg-text:after{animation:none}#cg-chat button,#cg-chat svg{transition:none!important}}
@media(prefers-reduced-motion:reduce){#cg-launch:before{animation:none}}
