* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: 'Segoe UI', Tahoma, Arial, sans-serif;
  background: #0f1115;
  color: #e6e6e6;
}
.app { display: flex; min-height: 100vh; }
.sidebar {
  width: 220px;
  background: #14161c;
  padding: 16px;
  border-inline-end: 1px solid #262a33;
}
.sidebar h1 { font-size: 16px; margin: 0 0 16px; }
.nav-item {
  display: block;
  width: 100%;
  text-align: start;
  padding: 8px 10px;
  margin-bottom: 4px;
  border-radius: 6px;
  background: transparent;
  border: none;
  color: #cfd3da;
  cursor: pointer;
  font-size: 14px;
}
.nav-item.active { background: #262a33; color: white; }
.main { flex: 1; padding: 24px; overflow-y: auto; }
.board { display: flex; gap: 12px; overflow-x: auto; }
.column { flex: 0 0 260px; background: #14161c; border-radius: 8px; padding: 10px; }
.column h3 { font-size: 13px; text-transform: uppercase; color: #9aa1ad; margin: 4px 0 10px; }
.card {
  background: #1c1f27;
  border: 1px solid #262a33;
  border-radius: 6px;
  padding: 10px;
  margin-bottom: 8px;
  cursor: pointer;
}
.card:hover { border-color: #3b82f6; }
.card .title { font-size: 13px; font-weight: 600; margin-bottom: 4px; }
.card .meta { font-size: 11px; color: #9aa1ad; }
.badge {
  display: inline-block;
  font-size: 10px;
  padding: 1px 6px;
  border-radius: 10px;
  background: #2a2f3a;
  color: #cfd3da;
}
.priority-urgent { color: #ef4444; }
.priority-high { color: #f59e0b; }
button.primary {
  background: #3b82f6;
  color: white;
  border: none;
  padding: 8px 14px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 13px;
}
button.danger { background: #ef4444; }
button.secondary { background: #2a2f3a; color: #e6e6e6; }
input, textarea, select {
  width: 100%;
  padding: 8px;
  border-radius: 6px;
  border: 1px solid #262a33;
  background: #1c1f27;
  color: #e6e6e6;
  font-size: 13px;
  margin-bottom: 10px;
}
label { font-size: 12px; color: #9aa1ad; display: block; margin-bottom: 4px; }
.thread { display: flex; flex-direction: column; gap: 8px; margin: 16px 0; }
.msg { background: #1c1f27; border-radius: 6px; padding: 8px 10px; max-width: 640px; }
.msg .sender { font-size: 11px; color: #9aa1ad; margin-bottom: 4px; }
.approval-card {
  background: #1c1f27;
  border: 1px solid #ef4444;
  border-radius: 8px;
  padding: 14px;
  margin-bottom: 12px;
}
a.back { color: #3b82f6; text-decoration: none; font-size: 13px; }
.files-list { font-size: 13px; }
.files-list a { color: #3b82f6; }
