.cody-widget,
.cc-cody,
.public-cody {
  color: var(--cc-ink);
}

.cody-bubble,
.cc-cody__bubble {
  border: 1px solid var(--cc-border);
  border-radius: var(--cc-radius-pill);
  background: var(--cc-green);
  color: #0B0F14;
  box-shadow: var(--cc-shadow);
}

.cody-panel,
.cc-cody__panel {
  overflow: hidden;
  border: 1px solid var(--cc-border);
  border-radius: var(--cc-radius-xl);
  background: color-mix(in srgb, var(--cc-panel) 94%, transparent);
  color: var(--cc-ink);
  box-shadow: var(--cc-shadow);
}

.cody-message,
.cc-cody__message {
  border-radius: var(--cc-radius-md);
  padding: 12px 14px;
  background: var(--cc-bg-soft);
  color: var(--cc-ink-soft);
}

.cody-message--assistant,
.cc-cody__message--assistant {
  background: var(--cc-green-soft);
  color: var(--cc-ink);
}

.cody-quick-actions,
.cc-cody__quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.cody-quick-actions button,
.cc-cody__quick-actions button {
  border: 1px solid var(--cc-border);
  border-radius: var(--cc-radius-pill);
  background: var(--cc-panel);
  color: var(--cc-ink);
  padding: 8px 11px;
  cursor: pointer;
}

body.cc-floating-input-active .cody-widget,
body.cc-floating-input-active .public-cody,
body.cc-floating-input-active .cody-chat-root {
  transform: translateY(16px) scale(.94);
}

body.auth-shell .cody-widget,
body.auth-shell .public-cody,
body.auth-shell .cody-chat-root {
  display: none !important;
}

.cc-floating-near-footer .cody-widget,
.cc-floating-near-footer .public-cody,
.cc-floating-near-footer .cody-chat-root {
  --cody-safe-bottom: max(84px, env(safe-area-inset-bottom));
}

[data-theme="dark"] .cody-panel,
[data-theme="dark"] .cc-cody__panel,
[data-theme="dark"] .cody-quick-actions button,
[data-theme="dark"] .cc-cody__quick-actions button {
  background: rgba(19, 25, 34, 0.92);
  border-color: rgba(255, 255, 255, 0.10);
}

@media (max-width: 640px) {
  .cody-chat-root:not(.is-open),
  .cody-widget,
  .public-cody {
    transform: scale(.9);
    transform-origin: bottom right;
  }
}
