.chat-container {
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}

.chat-header {
  background: rgba(130, 94, 230, 0.3);
  padding: 15px 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.chat-status {
  display: flex;
  align-items: center;
  gap: 8px;
}

.status-indicator {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #10b981;
  animation: pulse 2s infinite;
}

.status-indicator.disconnected {
  background: #ef4444;
  animation: none;
}

@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}

.chat-messages {
  height: 500px;
  overflow-y: auto;
  padding: 20px;
  background: rgba(0, 0, 0, 0.4);
  font-family: 'Courier New', monospace;
  font-size: 14px;
  line-height: 1.6;
}

.chat-messages::-webkit-scrollbar {
  width: 10px;
}

.chat-messages::-webkit-scrollbar-track {
  background: rgba(0, 0, 0, 0.3);
  border-radius: 5px;
}

.chat-messages::-webkit-scrollbar-thumb {
  background: rgba(130, 94, 230, 0.5);
  border-radius: 5px;
}

.chat-messages::-webkit-scrollbar-thumb:hover {
  background: rgba(130, 94, 230, 0.8);
}

.chat-message {
  margin-bottom: 4px;
  word-wrap: break-word;
}

.chat-message.you {
  color: #60a5fa;
}

.chat-message.server {
  color: #a78bfa;
  font-style: italic;
}

.chat-footer {
  padding: 15px 20px;
  background: rgba(0, 0, 0, 0.3);
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  text-align: center;
  color: rgba(255, 255, 255, 0.7);
  font-size: 14px;
}

.chat-footer i {
  color: #10b981;
  margin-right: 5px;
}

.mc-0 { color: #000000; }
.mc-1 { color: #0000AA; }
.mc-2 { color: #00AA00; }
.mc-3 { color: #00AAAA; }
.mc-4 { color: #AA0000; }
.mc-5 { color: #AA00AA; }
.mc-6 { color: #FFAA00; }
.mc-7 { color: #AAAAAA; }
.mc-8 { color: #555555; }
.mc-9 { color: #5555FF; }
.mc-a { color: #55FF55; }
.mc-b { color: #55FFFF; }
.mc-c { color: #FF5555; }
.mc-d { color: #FF55FF; }
.mc-e { color: #FFFF55; }
.mc-f { color: #FFFFFF; }
.mc-bold { font-weight: bold; }
.mc-italic { font-style: italic; }
.mc-underline { text-decoration: underline; }
.mc-strikethrough { text-decoration: line-through; }

.chat-message .source-badge {
  display: inline-block;
  padding: 2px 6px;
  border-radius: 3px;
  font-size: 10px;
  font-weight: bold;
  margin-right: 5px;
  text-transform: uppercase;
}

.chat-message .source-badge.discord {
  background: #5865F2;
  color: white;
}

.chat-message .source-badge.minecraft {
  background: #62C462;
  color: white;
}

.age-gate-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.95);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  padding: 20px;
}
.age-gate-box {
  background: #111;
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 12px;
  padding: 30px;
  max-width: 600px;
  text-align: center;
  color: #fff;
  box-shadow: 0 10px 40px rgba(0,0,0,0.6);
}
.age-gate-box h2 {
  margin-bottom: 20px;
}
.age-gate-box p {
  margin-bottom: 20px;
  color: rgba(255,255,255,0.85);
}
.age-gate-buttons {
  display: flex;
  gap: 15px;
  justify-content: center;
  flex-wrap: wrap;
}
.age-gate-buttons button {
  padding: 10px 20px;
  border-radius: 6px;
  border: none;
  font-weight: 600;
}
.btn-accept {
  background: #22c55e;
  color: #000;
}
.btn-decline {
  background: #ef4444;
  color: #fff;
}

@media (max-width: 768px) {
  .chat-messages {
    height: 400px;
  }
}