:root {
	--chatbot_color_grade_1: var(--color_brand_primary_darker);
	--chatbot_color_grade_2: var(--color_brand_primary);
	--chatbot_color_background: var(--color_brand_primary_lighter);
}
think {
    display: none;
}
    .chat-container {
      max-width: 700px;
      margin: 0 auto;
      background: white;
      border-radius: 16px;
      box-shadow: 0 20px 60px rgba(0,0,0,0.3);
      overflow: hidden;
    }
    
    .chat-header {
      background: linear-gradient(135deg, var(--chatbot_color_grade_1) 0%, var(--chatbot_color_grade_2) 100%);
      color: white;
      padding: 20px;
      text-align: center;
    }
    
    .chat-header h1 {
      font-size: 24px;
      font-weight: 600;
    }
    
    .chat-header p {
      font-size: 14px;
      opacity: 0.9;
      margin-top: 5px;
    }
    
    #chat-response {
      height: 50vh;
      overflow-y: auto;
      padding: 20px;
      background: var(--chatbot_color_background);
    }
    
    .message {
      margin-bottom: 20px;
      animation: fadeIn 0.3s ease;
    }
    
    @keyframes fadeIn {
      from { opacity: 0; transform: translateY(10px); }
      to { opacity: 1; transform: translateY(0); }
    }
    
    .message-content {
      padding: 15px 20px;
      border-radius: 12px;
      line-height: 1.6;
      font-size: 15px;
    }
    
    .message.user .message-content {
      background: linear-gradient(135deg, var(--chatbot_color_grade_1) 0%, var(--chatbot_color_grade_2) 100%);
      color: white;
      margin-left: 20%;
    }
    
    .message.assistant .message-content {
      background: white;
      color: #333;
      margin-right: 20%;
      box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    }
    
    .message.error .message-content {
      background: #f8d7da;
      color: #721c24;
      margin-right: 0;
      border: 1px solid #f5c6cb;
    }
    
    /* Markdown Styles */
    .message-content p { margin-bottom: 12px; }
    .message-content p:last-child { margin-bottom: 0; }
    
    .message-content code {
      background: rgba(0,0,0,0.1);
      padding: 2px 6px;
      border-radius: 4px;
      font-family: 'Consolas', 'Monaco', monospace;
      font-size: 14px;
    }
    
    .message.user .message-content code {
      background: rgba(255,255,255,0.2);
    }
    
    .message-content pre {
      background: #1e1e1e;
      padding: 15px;
      border-radius: 8px;
      overflow-x: auto;
      margin: 15px 0;
    }
    
    .message-content pre code {
      background: transparent;
      padding: 0;
      color: #d4d4d4;
    }
    
    .message-content ul, .message-content ol {
      margin: 10px 0;
      padding-left: 25px;
    }
    
    .message-content li { margin-bottom: 8px; }
    
    .message-content blockquote {
      border-left: 4px solid var(--chatbot_color_grade_1);
      padding-left: 15px;
      margin: 15px 0;
      color: #666;
      font-style: italic;
    }
    
    .message-content table {
      width: 100%;
      border-collapse: collapse;
      margin: 15px 0;
    }
    
    .message-content th, .message-content td {
      border: 1px solid #ddd;
      padding: 10px;
      text-align: left;
    }
    
    .message-content th {
      background: #f1f1f1;
      font-weight: 600;
    }
    
    .message-content a {
      color: var(--chatbot_color_grade_1);
      text-decoration: none;
    }
    
    .message-content a:hover {
      text-decoration: underline;
    }
    
    .input-area {
      padding: 20px;
      background: white;
      border-top: 1px solid #e0e0e0;
    }
    
    #user-input {
      width: 100%;
      height: 100px;
      padding: 15px;
      border: 2px solid #e0e0e0;
      border-radius: 10px;
      resize: none;
      font-size: 15px;
      font-family: inherit;
      transition: border-color 0.2s;
    }
    
    #user-input:focus {
      outline: none;
      border-color: var(--chatbot_color_grade_1);
    }
    
    .button-row {
      display: flex;
      gap: 10px;
      margin-top: 12px;
    }
    
    #send-btn {
      flex: 1;
      padding: 14px 24px;
      background: linear-gradient(135deg, var(--chatbot_color_grade_1) 0%, var(--chatbot_color_grade_2) 100%);
      color: white;
      border: none;
      border-radius: 8px;
      font-size: 16px;
      font-weight: 600;
      cursor: pointer;
      transition: transform 0.2s, box-shadow 0.2s;
    }
    
    #send-btn:hover:not(:disabled) {
      transform: translateY(-2px);
      box-shadow: 0 5px 20px rgba(102, 126, 234, 0.4);
    }
    
    #send-btn:disabled {
      background: #ccc;
      cursor: not-allowed;
      transform: none;
      box-shadow: none;
    }
    
    #clear-btn {
      padding: 14px 24px;
      background: #f1f1f1;
      color: #666;
      border: none;
      border-radius: 8px;
      font-size: 16px;
      cursor: pointer;
      transition: background 0.2s;
    }
    
    #clear-btn:hover {
      background: #e0e0e0;
    }
    
    .typing-indicator {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 15px 20px;
      color: #666;
      font-style: italic;
    }
    
    .typing-dots {
      display: flex;
      gap: 4px;
    }
    
    .typing-dots span {
      width: 8px;
      height: 8px;
      background: var(--chatbot_color_grade_1);
      border-radius: 50%;
      animation: bounce 1.4s infinite ease-in-out both;
    }
    
    .typing-dots span:nth-child(1) { animation-delay: -0.32s; }
    .typing-dots span:nth-child(2) { animation-delay: -0.16s; }
    
    @keyframes bounce {
      0%, 80%, 100% { transform: scale(0); }
      40% { transform: scale(1); }
    }
    
    /* Scrollbar Styling */
    #chat-response::-webkit-scrollbar { width: 8px; }
    #chat-response::-webkit-scrollbar-track { background: #f1f1f1; }
    #chat-response::-webkit-scrollbar-thumb {
      background: #c1c1c1;
      border-radius: 4px;
    }
    #chat-response::-webkit-scrollbar-thumb:hover { background: #a1a1a1; }
    
    /* Responsive */
    @media (max-width: 600px) {
      .message.user .message-content,
      .message.assistant .message-content { margin-left: 0; margin-right: 0; }
    }
