/* Main CSS entry point for J4F Assistant - orders all CSS for correct cascade */

@import url('styles/reset.css');
@import url('styles/background.css');
@import url('styles/layout.css');
@import url('styles/typography.css');
@import url('styles/animations.css');
@import url('chat/chat-templates.css');
@import url('styles/chat.css');
@import url('styles/input.css');
@import url('styles/markdown.css');
@import url('connection-status.css');
@import url('sidebar/sidebar.css');
@import url('sidebar/sidebar-orders.css');
@import url('sidebar/sidebar-models.css');
@import url('terminal/layout.css');
@import url('terminal/toggle.css');
@import url('terminal/xterm-overrides.css');

/* Enhanced Streaming Animation Styles */
.streaming-animated-line {
  position: relative;
  display: inline;
}

.streaming-cursor {
  display: inline-block;
  background-color: var(--accent-color, #007acc);
  color: transparent;
  animation: streaming-cursor-blink 1s infinite;
  margin-left: 1px;
  width: 2px;
  height: 1.2em;
  vertical-align: baseline;
}

@keyframes streaming-cursor-blink {
  0%, 50% { opacity: 1; }
  51%, 100% { opacity: 0; }
}

/* Ensure smooth streaming animation */
.message.streaming .message-content {
  word-break: break-word;
  white-space: pre-wrap;
}

.streaming-animated-line * {
  animation: streaming-fade-in 0.3s ease-out;
}

@keyframes streaming-fade-in {
  from { 
    opacity: 0; 
    transform: translateY(2px);
  }
  to { 
    opacity: 1; 
    transform: translateY(0);
  }
}
