
/* page style: chat */
body[data-site-route='/chat/'] .chat-page {
  gap: var(--space-lg);
}

body[data-site-route='/chat/'] .chat-room {
  display: grid;
  gap: var(--space-md);
  padding: var(--space-md) 0;
}

body[data-site-route='/chat/'] .chat-thread {
  display: grid;
  gap: var(--space-md);
  max-height: 50svh;
  min-height: 10rem;
  overflow-y: auto;
  padding: var(--space-sm) 0;
  scrollbar-color: var(--line-strong) transparent;
}

body[data-site-route='/chat/'] .chat-message {
  display: grid;
  gap: var(--space-xs);
}

body[data-site-route='/chat/'] .chat-message.user {
  justify-items: end;
}

body[data-site-route='/chat/'] .chat-message.pending {
  color: var(--muted);
}

body[data-site-route='/chat/'] .chat-composer {
  align-items: end;
  display: grid;
  gap: var(--space-sm);
  grid-template-columns: minmax(0,1fr) 44px;
}

body[data-site-route='/chat/'] .chat-composer textarea {
  background: var(--surface);
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-xs);
  min-height: 88px;
  padding: 10px 12px;
  resize: vertical;
  transition: background var(--transition-fast), border-color var(--transition-fast);
  width: 100%;
}

body[data-site-route='/chat/'] .chat-composer textarea:hover {
  background: var(--surface-soft);
  border-color: var(--fg);
}

body[data-site-route='/chat/'] .chat-composer button {
  align-items: center;
  background: var(--fg);
  border: 1px solid var(--fg);
  border-radius: var(--radius-xs);
  color: var(--bg);
  cursor: pointer;
  display: inline-flex;
  font-size: 18px;
  height: 44px;
  justify-content: center;
  transition: background var(--transition-fast), border-color var(--transition-fast);
  width: 44px;
}

body[data-site-route='/chat/'] .chat-composer button:hover:not(:disabled) {
  background: var(--accent);
  border-color: var(--accent);
}

body[data-site-route='/chat/'] .chat-composer button:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}
