/* style.css v1.3.5 — Added support for 'Created On', 'Last Modified' and 'Modified By' */

/* ===================== GENIE CHAT UI ===================== */
body {
  font-family: Arial, sans-serif;
  margin: 0;
  background-color: #f4f4f4;
  color: #333;
}

.chat-container {
  width: 400px;
  max-width: 95%;
  background-color: white;
  border-radius: 12px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.header {
  background-color: #5c67f2;
  color: white;
  padding: 15px;
  text-align: center;
}

.chat-box {
  flex-grow: 1;
  padding: 15px;
  overflow-y: auto;
  max-height: 400px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.bot-message {
  background-color: #e3e8ff;
  padding: 10px 15px;
  border-radius: 8px;
  align-self: flex-start;
}

.user-message {
  background-color: #dcf8c6;
  padding: 10px 15px;
  border-radius: 8px;
  align-self: flex-end;
}

.input-area {
  display: flex;
  padding: 10px;
  border-top: 1px solid #ddd;
  background: #fafafa;
}

.input-area input {
  flex-grow: 1;
  padding: 10px;
  font-size: 14px;
  border-radius: 8px;
  border: 1px solid #ccc;
}

.input-area button {
  margin-left: 10px;
  padding: 10px 20px;
  background-color: #5c67f2;
  color: white;
  border: none;
  border-radius: 8px;
  cursor: pointer;
}

/* ===================== ADMIN RIBBON & TABS ===================== */
.admin-header {
  background-color: #0066cc;
  color: white;
  padding: 10px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.admin-header h1 {
  margin: 0;
  font-size: 20px;
}

.nav-bar {
  background: linear-gradient(to right, #e8f0ff, #dceaff);
  display: flex;
  justify-content: flex-start;
  padding: 0;
  border-bottom: 2px solid #ccc;
  margin: 0 20px;
  box-shadow: inset 0 -2px 4px rgba(0, 0, 0, 0.05);
}

.nav-bar a {
  padding: 12px 20px;
  margin-right: 8px;
  font-weight: 600;
  color: #333;
  text-decoration: none;
  border-radius: 6px 6px 0 0;
  background-color: transparent;
  transition: all 0.3s ease;
}

.nav-bar a.active {
  background-color: #ffffff;
  border: 2px solid #ddd;
  border-bottom: none;
  color: #000;
}

.nav-bar a:hover {
  background-color: #edf4ff;
  color: #000;
}

.admin-header + .nav-bar {
  margin-top: -4px;
  border-bottom: 2px solid #ccc;
  padding-left: 20px;
}

main {
  padding: 20px;
}

.filter-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}

.filter-bar select,
.filter-bar input[type="text"] {
  padding: 6px 10px;
  border-radius: 6px;
  border: 1px solid #ccc;
  font-size: 14px;
}

.export-btn, button {
  padding: 8px 16px;
  border: none;
  border-radius: 4px;
  color: white;
  cursor: pointer;
}

.export-btn {
  background-color: #28a745;
  text-decoration: none;
}

button {
  background-color: #0066cc;
}

button:hover {
  background-color: #004c99;
}

.btn-delete {
  background-color: crimson !important;
}

table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  margin-top: 10px;
}

th, td {
  padding: 10px;
  border: 1px solid #dee2e6;
  word-break: break-word;
}

th {
  background-color: #007bff;
  color: white;
}

tr:nth-child(even) {
  background-color: #f2f2f2;
}

form {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

select, input[type="text"] {
  padding: 6px;
  border-radius: 4px;
  border: 1px solid #ccc;
}

.preview-button {
  background-color: #17a2b8;
}

/* Status Color Classes */
.status-requested { color: #ffa502; font-weight: bold; }
.status-assigned { color: #1e90ff; font-weight: bold; }
.status-resolved { color: #2ed573; font-weight: bold; }
.status-closed { color: #a4b0be; font-weight: bold; }
.status-waiting-customer-action { color: #ff6b81; font-weight: bold; }
.status-waiting-internal-action { color: #70a1ff; font-weight: bold; }
