/* Global Styles */
body {
  margin: 0;
  background: #0d0d0d;
  font-family: 'Roboto', sans-serif;
  color: #fff;
}

/* Main Container: Arrange robot (left) and chat interface (right) */
.cyber-container {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  gap: 40px;
  padding: 20px;
}

/* Robot Container (Left Side) */
/* (No changes needed here for responsiveness) */

/* Robot Base */
.robot {
  width: 200px;
  height: 350px; /* Increased height for a more proper body */
  background: linear-gradient(135deg, #2a2a2a, #1a1a1a);
  border: 4px solid #00ffff;
  border-radius: 10px;
  box-shadow: 0 0 20px rgba(0, 255, 255, 0.5);
  position: relative;
  animation: float 3s ease-in-out infinite;
}

/* Head Styling */
.robot .head {
  width: 180px;
  height: 100px;
  background: #333;
  border: 2px solid #00ffff;
  border-radius: 10px 10px 0 0;
  margin: 0 auto;
  position: relative;
}

/* Robot Eyes */
.robot .eye {
  width: 20px;
  height: 20px;
  background: #00ffff;
  border-radius: 50%;
  position: absolute;
  top: 30px;
  box-shadow: 0 0 10px #00ffff;
}
.robot .eye.left {
  left: 40px;
}
.robot .eye.right {
  right: 40px;
}

/* Glow Effect at the Base of the Head */
.robot .glow {
  width: 100%;
  height: 10px;
  background: linear-gradient(90deg, transparent, #00ffff, transparent);
  position: absolute;
  bottom: 0;
  left: 0;
}

/* Body Styling */
.robot .body {
  width: 180px;
  height: 220px; /* More room for a proper chest area */
  background: #222;
  border: 2px solid #00ffff;
  border-top: none;
  margin: 0 auto;
  border-radius: 0 0 10px 10px;
  position: relative;
  padding-top: 20px;
}

/* Chest Panel with Logo covering the complete chest */
.robot .body .chest {
  width: 90%;
  height: 140px;
  margin: 0 auto;
  background: url('images/logo.png') no-repeat center;
  background-size: cover;
  border: 2px solid #00ffff;
  border-radius: 10px;
  box-shadow: inset 0 0 10px rgba(0, 255, 255, 0.5);
}

/* Pulse Effect for Extra Flair */
.robot .body .pulse {
  width: 30px;
  height: 30px;
  background: radial-gradient(circle, #00ffff, #004d4d);
  border-radius: 50%;
  position: absolute;
  bottom: 15px;
  right: 15px;
  animation: pulse 2s infinite;
  box-shadow: 0 0 15px #00ffff;
}

/* Enhanced Chat Interface Styling (Right Side) */
.chat-interface {
  width: 450px;
  background: linear-gradient(135deg, #1a1a1a, #2a2a2a);
  border: 2px solid #00ffff;
  border-radius: 15px;
  padding: 15px;
  box-shadow: 0 0 20px rgba(0, 255, 255, 0.5);
}

/* Chat Window */
#chat-window {
  height: 400px;
  overflow-y: auto;
  margin-bottom: 15px;
  background: #121212;
  border: 1px solid #00ffff;
  border-radius: 10px;
  padding: 10px;
  font-size: 14px;
  display: flex;
  flex-direction: column;
}

/* Message Styling */
.message {
  margin: 10px;
  padding: 10px;
  border-radius: 10px;
  max-width: 80%;
  display: flex;
  flex-direction: column;
}
.message .message-header {
  font-weight: bold;
  margin-bottom: 5px;
}
.message .message-content {
  white-space: pre-wrap;
}
/* User message: align right */
.message.user {
  align-self: flex-end;
  background: #007acc;
  color: #fff;
}
/* Robot (Cypher) message: align left */
.message.Cypher {
  align-self: flex-start;
  background: #222;
  border: 1px solid #00ffff;
  color: #fff;
}
/* Error message styling (if needed) */
.message.error {
  align-self: center;
  background: #ff0000;
  color: #fff;
}

/* Input Box */
.input-box {
  display: flex;
  gap: 10px;
  margin-top: 10px;
}
.input-box input {
  flex: 1;
  padding: 12px;
  border: none;
  border-radius: 10px;
  background: linear-gradient(135deg, #2a2a2a, #1a1a1a);
  color: #fff;
  font-size: 16px;
  outline: none;
  box-shadow: inset 0 0 10px rgba(0, 255, 255, 0.5);
}
.input-box button {
  background: #00ffff;
  border: none;
  padding: 12px;
  border-radius: 10px;
  cursor: pointer;
}

/* Animations */
@keyframes pulse {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.2);
    opacity: 0.7;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes float {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}

/* Responsive */
@media (max-width: 768px) {
.cyber-container {
  flex-direction: column;
  gap: 20px;
}
.chat-interface {
  width: 100%;
}
/* Navbar Responsive */
.menu-toggle {
  display: flex;
}
nav ul {
  position: absolute;
  top: 60px;
  right: 20px;
  width: 200px;
  background: #ffffff;
  flex-direction: column;
  display: none;
  border-radius: 5px;
  padding: 10px;
}
nav ul.active {
  display: flex;
}
nav ul li {
  margin: 10px 0;
  text-align: right;
}
}

@media (max-width: 480px) {
.chat-interface {
  width: 100%;
}
nav {
  flex-direction: column;
  align-items: flex-start;
}
nav ul {
  align-items: center;
}
}
