.ck-banner{z-index:1000;background:var(--surface-ink);width:min(680px,100vw - 32px);color:var(--text-on-ink);border:1px solid var(--border-ink);border-radius:var(--radius-xl);padding:var(--space-6);animation:ck-rise .4s var(--ease-out) both;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 18px 50px #12141052}@keyframes ck-rise{0%{opacity:0;transform:translate(-50%,16px)}to{opacity:1;transform:translate(-50%)}}.ck-banner h2{color:var(--text-on-ink);font-size:var(--text-lg);font-weight:var(--weight-bold)}.ck-banner p{color:var(--text-on-ink-soft);font-size:var(--text-sm);margin-top:8px;line-height:1.6}.ck-banner p a{color:var(--green-400);text-underline-offset:3px;text-decoration:underline}.ck-actions{margin-top:var(--space-5);flex-wrap:wrap;gap:10px;display:flex}.ck-btn{min-width:120px;height:44px;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-semibold);border-radius:var(--radius-md);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);flex:auto;justify-content:center;align-items:center;gap:8px;padding:0 18px;display:inline-flex}.ck-btn-primary{background:var(--brand);color:var(--on-brand);border:1px solid var(--brand)}.ck-btn-primary:hover{background:var(--green-400);border-color:var(--green-400)}.ck-btn-ghost{color:var(--text-on-ink);border:1px solid var(--border-ink);background:0 0}.ck-btn-ghost:hover{border-color:#fff6}.ck-prefs{margin-top:var(--space-5);gap:12px;display:grid}.ck-pref{border:1px solid var(--border-ink);border-radius:var(--radius-md);gap:12px;padding:14px;display:flex}.ck-pref input{width:18px;height:18px;accent-color:var(--green-400);cursor:pointer;flex-shrink:0;margin-top:2px}.ck-pref input:disabled{cursor:not-allowed;opacity:.7}.ck-pref .ck-pref-t{color:var(--text-on-ink);font-size:var(--text-sm);font-weight:var(--weight-semibold);display:block}.ck-pref .ck-pref-d{color:var(--text-on-ink-soft);margin-top:3px;font-size:13px;line-height:1.5;display:block}.ihm-cookie-link{cursor:pointer;color:var(--text-on-ink-soft);font:inherit;background:0 0;border:0;padding:0}.ihm-cookie-link:hover{color:var(--text-on-ink)}.cw-fab{z-index:990;cursor:pointer;background:var(--brand);width:58px;height:58px;color:var(--on-brand);transition:transform var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);border:0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:fixed;bottom:22px;left:22px;box-shadow:0 12px 30px #12141047}.cw-fab:hover{background:var(--green-600);transform:translateY(-2px)}.cw-panel{z-index:991;background:var(--surface-page);border:1px solid var(--border);border-radius:var(--radius-xl);width:min(390px,100vw - 32px);height:min(620px,100vh - 44px);animation:cw-in .28s var(--ease-out) both;flex-direction:column;display:flex;position:fixed;bottom:22px;left:22px;overflow:hidden;box-shadow:0 24px 60px #12141052}@keyframes cw-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.cw-head{background:var(--surface-ink);color:var(--text-on-ink);align-items:center;gap:10px;padding:14px 16px;display:flex}.cw-head .cw-title{font-weight:var(--weight-bold);font-size:var(--text-base)}.cw-head .cw-sub{color:var(--text-on-ink-soft);font-size:11.5px}.cw-head .cw-x{color:var(--text-on-ink-soft);cursor:pointer;background:0 0;border:0;margin-left:auto}.cw-head .cw-x:hover{color:var(--white)}.cw-dot{background:var(--green-400);border-radius:999px;width:8px;height:8px}.cw-body{background:var(--surface-subtle);flex-direction:column;flex:1;gap:10px;padding:16px;display:flex;overflow-y:auto}.cw-msg{border-radius:var(--radius-lg);max-width:85%;font-size:var(--text-sm);white-space:pre-wrap;padding:10px 13px;line-height:1.5}.cw-msg.bot{background:var(--surface-card);border:1px solid var(--border);color:var(--text-primary);white-space:normal;align-self:flex-start}.cw-msg.user{background:var(--brand);color:var(--on-brand);align-self:flex-end}.cw-msg.bot p{margin:0 0 6px}.cw-msg.bot p:last-child{margin-bottom:0}.cw-msg.bot ul{margin:6px 0;padding-left:18px}.cw-msg.bot li{margin:2px 0}.cw-msg.bot a{color:var(--text-brand);text-underline-offset:2px;text-decoration:underline}.cw-msg.bot strong{font-weight:var(--weight-semibold)}.cw-msg.bot code{font-family:var(--font-mono);background:var(--surface-sunken);border-radius:5px;padding:1px 5px;font-size:12px}.cw-typing{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-lg);align-self:flex-start;gap:4px;padding:12px 14px;display:inline-flex}.cw-typing span{background:var(--neutral-400);border-radius:999px;width:6px;height:6px;animation:1.2s ease-in-out infinite cw-blink}.cw-typing span:nth-child(2){animation-delay:.2s}.cw-typing span:nth-child(3){animation-delay:.4s}@keyframes cw-blink{0%,to{opacity:.3}50%{opacity:1}}.cw-foot{border-top:1px solid var(--border);background:var(--surface-page);padding:10px}.cw-inputrow{align-items:flex-end;gap:8px;display:flex}.cw-input{resize:none;border:1px solid var(--border-strong);border-radius:var(--radius-md);max-height:110px;font:inherit;font-size:var(--text-sm);color:var(--text-primary);background:var(--surface-page);outline:none;flex:1;padding:10px 12px}.cw-input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-subtle)}.cw-send{border-radius:var(--radius-md);background:var(--brand);width:40px;height:40px;color:var(--on-brand);cursor:pointer;border:0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.cw-send:disabled{opacity:.5;cursor:not-allowed}.cw-privacy{color:var(--text-muted);margin-top:8px;font-size:11px;line-height:1.4}.cw-privacy a{color:var(--text-secondary);text-underline-offset:2px;text-decoration:underline}.cw-escalate-btn{color:var(--text-brand);cursor:pointer;background:0 0;border:0;margin-top:2px;padding:0;font-size:12px}.cw-escalate-btn:hover{text-decoration:underline}.cw-form{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:8px;padding:12px;display:flex}.cw-form input{border:1px solid var(--border-strong);border-radius:var(--radius-md);font:inherit;font-size:var(--text-sm);outline:none;padding:8px 10px}.cw-form input:focus{border-color:var(--brand)}.cw-form-actions{gap:8px;display:flex}.cw-btn{border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;border:0;padding:8px 14px}.cw-btn-primary{background:var(--brand);color:var(--on-brand)}.cw-btn-ghost{color:var(--text-secondary);border:1px solid var(--border-strong);background:0 0}
