/* ===============================
   Q&A Network - Podcasting Theme
   Light Teal with Dark Accent
   =============================== */

:root {
  /* Brand Colors */
  --bs-primary: #2DD4BF;                 /* Light Teal */
  --bs-primary-rgb: 45, 212, 191;

  --teal-dark: #0F766E;                  /* Primary Accent */
  --teal-darker: #115E59;                /* Hover / Active */

  /* Base Colors */
  --bs-body-color: #1F2937;              /* Dark slate */
  --bs-body-bg: #F0FDFA;                 /* Very light teal */
}

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

/* Header */
header {
  background-color: #ffffff;
  border-bottom: 1px solid #CCFBF1;
}
header a {
  text-decoration: none !important;
  color: var(--bs-body-color);
}
header a:hover {
  color: var(--teal-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(--teal-dark);
  font-weight: 600;
  border-bottom: 2px solid var(--teal-dark);
}

/* Buttons */
.btn-primary {
  background-color: var(--teal-dark) !important;
  border-color: var(--teal-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(--teal-darker) !important;
  border-color: var(--teal-darker) !important;
}

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

/* Search Box */
.search-box input:focus {
  border-color: var(--teal-dark);
  box-shadow: 0 0 0 0.15rem rgba(15, 118, 110, 0.25);
}

/* Cards */
.question-card:hover {
  box-shadow: 0 0.5rem 1rem rgba(0,0,0,.08);
}
.question-card a {
  color: var(--teal-dark);
  text-decoration: none !important;
}
.question-card a:hover {
  color: var(--teal-darker);
}

/* Footer */
footer {
  background: linear-gradient(135deg, var(--teal-dark), var(--teal-darker));
  color: #ffffff !important;
  padding: 2rem 0;
}
footer a {
  color: #ffffff !important;
}
footer a:hover {
  color: #CCFBF1 !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(--teal-dark) !important;
  border-bottom-color: var(--teal-dark);
}

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

/* ==========================================================
   MAIN CONTENT LINKS
   ========================================================== */
main a {
  color: #111827 !important;
}
main a:hover {
  color: var(--teal-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;
}
