/* === BASE === */
body {
  background-color: #f8f9fa;
  font-family: 'Segoe UI', 'Poppins', sans-serif;
  color: #212529;
  padding-top: 70px;
  transition: background 0.3s, color 0.3s;
}

h1, h2, h3, h4, h5 {
  text-transform: none;
  font-weight: 600;
  letter-spacing: 0.3px;
}

/* === NAVBAR === */
.navbar {
  font-size: 0.95rem;
  border-bottom: 1px solid #dee2e6;
}
.navbar-brand img {
  max-height: 45px;
}
.navbar-nav .btn,
.navbar-nav .nav-link {
  font-weight: 500;
  padding: 6px 12px;
  border-radius: 6px;
  text-transform: none;
}
.dropdown-menu .dropdown-item {
  font-size: 0.95rem;
}

.dropdown-menu {
  font-size: 0.95rem;
  animation: fadeIn 0.2s ease-in-out;
}

@keyframes fadeIn {
  from { opacity: 0; transform: scale(0.95); }
  to   { opacity: 1; transform: scale(1); }
}

.dropdown-toggle::after {
  vertical-align: middle;
}

/* === CARDS DE RÁDIO === */
.card-radio {
  background: #fff;
  border: none;
  border-radius: 18px;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05);
  transition: 0.3s ease-in-out;
}
.card-radio:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
}
.card-radio img {
  max-height: 140px;
  object-fit: contain;
  padding: 15px;
  border-left: 5px solid #0d6efd;
}

/* === GRÁFICOS === */
canvas {
  max-width: 100%;
}

/* === MODO ESCURO === */
body.dark-mode {
  background-color: #181a1b;
  color: #f1f1f1;
}
body.dark-mode .card-radio {
  background-color: #232627;
  color: #f1f1f1;
}
body.dark-mode .navbar {
  background-color: #1f2021;
}
body.dark-mode .btn {
  border-color: #bbb;
  color: #eee;
}
body.dark-mode .btn:hover {
  border-color: #fff;
  color: #fff;
}
body.dark-mode footer {
  background-color: #202123;
  color: #ccc;
}

/* === BOTÕES, ÍCONES === */
.btn-fav {
  background: none;
  border: none;
  font-size: 18px;
  color: #ccc;
}
.btn-fav.active {
  color: gold;
}
.social-icons a {
  margin: 0 6px;
  font-size: 18px;
  color: #666;
}
.social-icons a:hover {
  color: #0d6efd;
}

/* === RODAPÉ === */
footer {
  background-color: #ffffff;
  border-top: 1px solid #dee2e6;
  font-size: 0.85rem;
  color: #6c757d;
}
footer a {
  color: inherit;
}
footer a:hover {
  color: #0d6efd;
}