/* ===============================
   Q&A Network - Illustration Theme
   Soft Coral & Paper Blush
   =============================== */

:root {
  /* Brand Colors */
  --bs-primary: #F87171;                 /* Soft Coral */
  --bs-primary-rgb: 248, 113, 113;

  --coral-dark: #DC2626;                 /* Primary Accent */
  --coral-darker: #B91C1C;               /* Hover / Active */

  /* Base Colors */
  --bs-body-color: #1F2937;              /* Dark slate */
  --bs-body-bg: #FFF1F2;                 /* Light blush / paper tone */
}

/* Body */
body {
  background-color: var(--bs-body-bg);
  color: var(--bs-body-color);
}

/* Header */
header {
  background-color: #ffffff;
  border-bottom: 1px solid #FECACA;
}
header a {
  text-decoration: none !important;
  color: var(--bs-body-color);
}
header a:hover {
  color: var(--coral-dark);
}
header img {
  width: 40px;
  height: 40px;
}
header .fs-5 {
  font-weight: 600;
}
header small {
  font-size: 0.9rem;
  opacity: 0.7;
}
header nav a.active {
  color: var(--coral-dark);
  font-weight: 600;
  border-bottom: 2px solid var(--coral-dark);
}

/* Buttons */
.btn-primary {
  background-color: var(--coral-dark) !important;
  border-color: var(--coral-dark) !important;
  color: #fff !important;
  transition: background-color 0.25s ease, border-color 0.25s ease;
}
.btn-primary:hover,
.btn-primary:focus {
  background-color: var(--coral-darker) !important;
  border-color: var(--coral-darker) !important;
}

.btn-outline-primary {
  color: var(--coral-dark);
  border-color: var(--coral-dark);
}
.btn-outline-primary:hover,
.btn-outline-primary:focus {
  background-color: var(--coral-dark);
  color: #fff;
}

/* Search Box */
.search-box input:focus {
  border-color: var(--coral-dark);
  box-shadow: 0 0 0 0.15rem rgba(220, 38, 38, 0.25);
}

/* Cards */
.question-card:hover {
  box-shadow: 0 0.6rem 1.2rem rgba(220,38,38,.12);
}
.question-card a {
  color: var(--coral-dark);
  text-decoration: none !important;
}
.question-card a:hover {
  color: var(--coral-darker);
}

/* Footer */
footer {
  background: linear-gradient(135deg, var(--coral-dark), var(--coral-darker));
  color: #ffffff !important;
  padding: 2rem 0;
}
footer a {
  color: #ffffff !important;
}
footer a:hover {
  color: #FECACA !important;
}

/* ==========================================================
   TAG LINKS
   ========================================================== */
a.tag,
a.tag-link {
  border-bottom: 2px dotted #9CA3AF;
  color: inherit !important;
  margin-right: .75rem;
}
a.tag:hover,
a.tag-link:hover {
  color: var(--coral-dark) !important;
  border-bottom-color: var(--coral-dark);
}

/* ==========================================================
   PAGINATION
   ========================================================== */
.pagination {
  margin: 1.5rem 0 2.5rem;
  display: flex;
  justify-content: center;
  gap: .25rem;
}
.pagination .page-link {
  color: var(--coral-dark) !important;
  border: 1px solid var(--coral-dark) !important;
  background-color: #fff !important;
  border-radius: .375rem;
}
.pagination .page-link:hover {
  background-color: var(--coral-dark) !important;
  color: #fff !important;
}
.pagination .page-item.active .page-link {
  background-color: var(--coral-darker) !important;
  border-color: var(--coral-darker) !important;
  color: #fff;
}
.pagination .page-item.disabled .page-link {
  background-color: #FECACA !important;
  border-color: #FECACA !important;
  color: #9CA3AF !important;
}

/* ==========================================================
   MAIN CONTENT LINKS
   ========================================================== */
main a {
  color: #111827 !important;
}
main a:hover {
  color: var(--coral-dark) !important;
}

/* ==========================================================
   VENDOR BUTTON OVERRIDES
   ========================================================== */
.vendor-links a.btn,
.vendor-links a.btn-dark,
.vendor-links a.btn-secondary {
  color: #fff !important;
}
.vendor-links a.btn:hover {
  opacity: 0.9;
}
