/* --- RESOURCES PAGE STYLES --- */

/* 1. TABLE STYLES */
.chart-container {
  overflow-x: auto; /* For mobile scrolling */
}
.game-table {
  width: 100%; border-collapse: collapse; background: white;
  border-radius: 12px; overflow: hidden; border: 2px solid #ecf0f1;
}
.game-table th {
  background: #2c3e50; color: white; padding: 15px; text-align: left;
  font-family: 'Fredoka One'; text-transform: uppercase; font-size: 14px;
}
.game-table td {
  padding: 12px 15px; border-bottom: 1px solid #eee; color: #555; font-weight: bold; font-size: 14px;
}
.game-table tr:hover { background: #f9f9f9; }

/* Level Badges */
.lvl-badge { padding: 4px 8px; border-radius: 6px; color: white; font-size: 11px; }
.lvl-badge.gray { background: #95a5a6; }
.lvl-badge.green { background: #2ecc71; }
.lvl-badge.blue { background: #3498db; }
.lvl-badge.purple { background: #9b59b6; }
.lvl-badge.orange { background: #e67e22; }
.lvl-badge.red { background: #e74c3c; }

.highlight-row { background: #e8f8f5 !important; }
.highlight-row td { color: #27ae60; }
.chart-note { margin-top: 10px; font-size: 13px; color: #7f8c8d; background: #fff3cd; padding: 10px; border-radius: 8px; }

/* 2. GEAR CARDS STYLES */
.gear-grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px;
}
.gear-card {
  background: white; border-radius: 16px; padding: 20px; display: flex; align-items: center; gap: 15px;
  border: 2px solid #ecf0f1; border-bottom: 5px solid #ccc; transition: transform 0.2s;
}
.gear-card:hover { transform: translateY(-3px); border-color: #bdc3c7; }

.gear-icon { font-size: 40px; background: #f8f9fa; width: 70px; height: 70px; display: flex; align-items: center; justify-content: center; border-radius: 50%; }
.gear-info h3 { margin: 0 0 5px 0; font-family: 'Fredoka One'; color: #2c3e50; }
.gear-stats { display: flex; gap: 10px; font-size: 12px; color: #555; margin-bottom: 8px; }
.gear-stats strong { color: #2c3e50; }
.gear-info p { margin: 0 0 10px 0; font-size: 13px; color: #7f8c8d; line-height: 1.3; }

.cost-pill {
  display: inline-block; background: #2ecc71; color: white; padding: 4px 10px; border-radius: 20px; font-size: 11px; font-weight: bold;
}

/* Gear Rarities Border Colors */
.gear-card.common { border-bottom-color: #95a5a6; }
.gear-card.rare { border-bottom-color: #3498db; }
.gear-card.godly { border-bottom-color: #e74c3c; }
.gear-card.legendary { border-bottom-color: #f1c40f; }

/* 3. CHAT STYLES */
.live-chat-box {
  background: #fff; border: 2px solid #bdc3c7; border-radius: 12px; overflow: hidden;
}
.chat-header {
  background: #2c3e50; color: white; padding: 10px 15px; font-size: 14px; display: flex; align-items: center; gap: 8px;
}
.online-dot { width: 8px; height: 8px; background: #2ecc71; border-radius: 50%; display: inline-block; box-shadow: 0 0 5px #2ecc71; }

.chat-messages {
  height: 200px; overflow-y: auto; padding: 15px; background: #f4f6f7; display: flex; flex-direction: column; gap: 10px;
}
.chat-msg { font-size: 13px; color: #555; animation: slideIn 0.3s ease; }
.chat-user { font-weight: bold; color: #2980b9; }
.chat-time { font-size: 10px; color: #999; margin-left: 5px; }

@keyframes slideIn { from { opacity: 0; transform: translateX(-10px); } to { opacity: 1; transform: translateX(0); } }

.chat-input-area {
  padding: 10px; display: flex; gap: 10px; border-top: 1px solid #eee; background: white;
}
.chat-input-area input {
  flex: 1; padding: 8px; border: 1px solid #ddd; border-radius: 6px; background: #eee; cursor: not-allowed;
}
.chat-input-area button {
  padding: 8px 20px; font-size: 14px;
}