body { background: #0b1220; color: #e6e9f0; }
.navbar, footer { background: #070d19; }
.card { background: #0f182b; border: 1px solid #16223a; box-shadow: 0 6px 24px rgba(0,0,0,.25); }
.table { color: #dbe0ea; }
.table thead { background:#121c31; }
a { color:#70a1ff; }
a:hover { color:#a3c6ff; }
.form-control, .form-select { background:#0f182b; color:#e6e9f0; border-color:#1c2a49; }
.form-control:focus, .form-select:focus { border-color:#3a77ff; box-shadow:0 0 0 .2rem rgba(58,119,255,.2); }
.btn-primary { background:#3a77ff; border-color:#3a77ff; }
.btn-outline-light { border-color:#324568; }
.badge { border:1px solid rgba(255,255,255,.08); }
.kanban { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1rem; }
.kanban .col header { display:flex; align-items:center; justify-content:space-between; margin-bottom:.5rem; }
.kanban .col header h5 { margin:0; }
.sidebar-card { position: sticky; top: 1rem; }
hr { border-color:#1b2948; }
.input-group-text { background:#0c1526; color:#bcd1ff; border-color:#273a66; }
.text-muted { color:#9cb1d8 !important; }
code, pre { color: #e6e9f0; }
.tag-dot { width:10px; height:10px; border-radius:50%; display:inline-block; margin-right:.4rem; border:1px solid rgba(255,255,255,.25); }
/* --- Light theme (readable) --- */
:root,[data-bs-theme="light"]{
  --bs-body-bg:#f7f9fc;
  --bs-body-color:#1a2333;
  --bs-secondary-color:#4b5a7d;
  --bs-card-bg:#ffffff;
  --bs-border-color:#d7dfef;
  --heading-color:#0a1430;
  --label-color:#0f1f44;

  --bs-input-bg:#ffffff;
  --bs-input-color:#0a1430;
  --bs-input-border-color:#a8b7d6;
  --bs-input-placeholder-color:#7b8fb8;
}

body{ background:var(--bs-body-bg); color:var(--bs-body-color); }
.navbar, footer{ background:#ffffff; border-bottom:1px solid var(--bs-border-color); }
.navbar .navbar-brand{ color:#0a1430; }
.card{ background:var(--bs-card-bg); border:1px solid var(--bs-border-color); box-shadow:0 3px 16px rgba(10,20,48,.06); }

h1,h2,h3,h4,h5,h6{ color:var(--heading-color); }
.form-label, legend, .form-text{ color:var(--label-color); }

.table{ color:var(--bs-body-color); }
.table thead{ background:#eef3ff; }

a{ color:#0d6efd; }
a:hover{ color:#084dbf; }

.form-control,.form-select{
  background:var(--bs-input-bg);
  color:var(--bs-input-color);
  border-color:var(--bs-input-border-color);
}
.form-control::placeholder{ color:var(--bs-input-placeholder-color); }
.form-control:focus,.form-select:focus{
  border-color:#5278ff;
  box-shadow:0 0 0 .2rem rgba(82,120,255,.2);
}

.btn-primary{ background:#0d6efd; border-color:#0d6efd; }
.btn-outline-light{ color:#1a2333; border-color:#a8b7d6; }
.badge{ border:1px solid #e5ebf7; }

.kanban{ display:grid; grid-template-columns:1fr 1fr 1fr; gap:1rem; }
.kanban .col header h5{ color:var(--heading-color); }

.text-muted{ color:var(--bs-secondary-color)!important; }
.input-group-text{ background:#f0f4ff; color:#22325e; border-color:#c7d3ee; }
.comment-box {
  min-height: 180px;
  font-size: 1rem;
  line-height: 1.5;
}
/* Keep "Email this comment" visible next to/under file upload */
.comment-bar {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  align-items: center;
}
.comment-bar .form-check {
  margin-left: 0; /* prevent it from being pushed off to the side */
}