/* Color Scheme */
:root {
  --black: #0b090a;
  --dark-charcoal: #161a1d;
  --dark-red: #660708;
  --red: #a4161a;
  --bright-red: #ba181b;
  --coral-red: #e5383b;
  --gray: #b1a7a6;
  --light-gray: #d3d3d3;
  --off-white: #f5f3f4;
  --white: #ffffff;
}

/* Body */
body {
  background-color: var(--off-white);
  color: var(--black);
}

/* Navbar */
.navbar {
  background-color: var(--dark-charcoal) !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  border-bottom: 3px solid var(--bright-red) !important;
}

.navbar-brand {
  color: var(--white) !important;
  font-weight: bold;
  font-size: 1.5rem;
}

/* Cards */
.card {
  border: 1px solid var(--light-gray);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  background-color: var(--white);
  border-radius: 8px;
}

.card-header {
  background-color: var(--off-white);
  border-bottom: 2px solid var(--coral-red);
  color: var(--black);
  font-weight: 600;
}

/* Buttons */
.btn-primary {
  background-color: var(--red);
  border-color: var(--red);
  color: var(--white);
  font-weight: 500;
}

.btn-primary:hover,
.btn-primary:focus {
  background-color: var(--dark-red);
  border-color: var(--dark-red);
  color: var(--white);
}

.btn-outline-primary {
  border-color: var(--red);
  color: var(--red);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
  background-color: var(--red) !important;
  border-color: var(--red) !important;
  color: var(--white);
}

.btn-outline-secondary {
  border-color: var(--gray);
  color: var(--white);
  border-width: 2px;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
  background-color: var(--gray);
  border-color: var(--gray);
  color: var(--black);
}

.btn-link {
  color: var(--black);
}

.btn-link:hover {
  color: var(--red);
}

/* Links */
a {
  color: var(--red);
  transition: color 0.2s;
}

a:hover {
  color: var(--coral-red);
}

/* Navbar links */
.navbar a {
  color: var(--white) !important;
}

.navbar a:hover {
  color: var(--coral-red) !important;
}

/* Forms */
.form-control:focus {
  border-color: var(--red);
  box-shadow: 0 0 0 0.2rem rgba(164, 22, 26, 0.25);
}

/* Text */
.text-muted {
  color: var(--gray) !important;
}

/* User avatars */
.rounded-circle {
  border: 2px solid var(--coral-red);
}

/* Login/Register card styling */
.container .card {
  border: 2px solid var(--coral-red);
}

h1,
h2,
h3 {
  color: var(--black);
}

/* Following list styling */
.list-group-item-action:hover {
  background-color: var(--off-white);
  border-color: var(--coral-red);
}

.badge.bg-secondary {
  background-color: var(--red) !important;
  color: var(--white);
}

#followingListContent .list-group-item {
  border-left: none;
  border-right: none;
}

#followingListContent .list-group-item:first-child {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

#followingListContent .list-group-item:last-child {
  border-bottom: none;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}
