/* Café Bar El Taller - Tema negro, gris y amarillo */
:root {
  --cb-negro: #0d0d0d;
  --cb-gris-oscuro: #1a1a1a;
  --cb-gris: #2d2d2d;
  --cb-gris-medio: #4a4a4a;
  --cb-gris-claro: #6c757d;
  --cb-amarillo: #e6b800;
  --cb-amarillo-claro: #ffc107;
  --cb-amarillo-oscuro: #b38600;
  --cb-blanco: #f8f9fa;
}

body {
  background-color: var(--cb-negro);
  color: var(--cb-blanco);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.bg-dark { background-color: var(--cb-gris-oscuro) !important; }
.bg-black { background-color: var(--cb-negro) !important; }
.text-amarillo { color: var(--cb-amarillo) !important; }
.bg-amarillo { background-color: var(--cb-amarillo) !important; }
.border-amarillo { border-color: var(--cb-amarillo) !important; }
.btn-amarillo {
  background-color: var(--cb-amarillo);
  color: var(--cb-negro);
  border: none;
}
.btn-amarillo:hover {
  background-color: var(--cb-amarillo-claro);
  color: var(--cb-negro);
}
.btn-outline-amarillo {
  border-color: var(--cb-amarillo);
  color: var(--cb-amarillo);
}
.btn-outline-amarillo:hover {
  background-color: var(--cb-amarillo);
  color: var(--cb-negro);
}

.navbar {
  background-color: var(--cb-gris-oscuro) !important;
  border-bottom: 2px solid var(--cb-amarillo);
}
.navbar-brand, .navbar-nav .nav-link {
  color: var(--cb-blanco) !important;
}
.navbar-nav .nav-link:hover, .navbar-brand:hover {
  color: var(--cb-amarillo) !important;
}
.navbar-toggler {
  border-color: var(--cb-gris-medio);
}
.navbar-toggler-icon {
  filter: invert(1);
}

.card {
  background-color: var(--cb-gris-oscuro);
  border: 1px solid var(--cb-gris);
  border-radius: 8px;
  transition: border-color 0.2s, transform 0.2s;
}
.card:hover {
  border-color: var(--cb-amarillo);
  transform: translateY(-2px);
}
.card-img-top {
  height: 200px;
  object-fit: cover;
  background: var(--cb-gris);
}
.card-title a {
  color: var(--cb-blanco);
  text-decoration: none;
}
.card-title a:hover {
  color: var(--cb-amarillo);
}
.card-text {
  color: var(--cb-gris-claro);
}
.badge-categoria {
  background-color: var(--cb-amarillo);
  color: var(--cb-negro);
  padding: 0.35em 0.65em;
}

.article-hero {
  background: var(--cb-gris-oscuro);
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 2rem;
}
.article-hero img {
  width: 100%;
  max-height: 400px;
  object-fit: cover;
}
.article-body {
  color: var(--cb-blanco);
  line-height: 1.7;
}
.article-body p { margin-bottom: 1rem; }
.article-body a {
  color: var(--cb-amarillo);
  text-decoration: underline;
}
.article-body a:hover {
  color: var(--cb-amarillo-claro);
}
.amazon-links {
  background: var(--cb-gris);
  border-left: 4px solid var(--cb-amarillo);
  padding: 1rem 1.5rem;
  margin: 1.5rem 0;
  border-radius: 0 8px 8px 0;
}
.amazon-links a {
  display: inline-block;
  margin: 0.25rem 0.5rem 0.25rem 0;
  padding: 0.4rem 0.8rem;
  background: var(--cb-amarillo);
  color: var(--cb-negro);
  border-radius: 6px;
  text-decoration: none;
  font-weight: 600;
}
.amazon-links a:hover {
  background: var(--cb-amarillo-claro);
  color: var(--cb-negro);
}

footer {
  background-color: var(--cb-gris-oscuro);
  border-top: 2px solid var(--cb-amarillo);
  color: var(--cb-gris-claro);
  padding: 2rem 0;
  margin-top: 3rem;
}
footer a { color: var(--cb-amarillo); }
footer a:hover { color: var(--cb-amarillo-claro); }

/* Admin */
.admin-sidebar {
  background: var(--cb-gris-oscuro);
  min-height: calc(100vh - 56px);
  border-right: 1px solid var(--cb-gris);
}
.admin-sidebar .nav-link {
  color: var(--cb-blanco);
  border-radius: 6px;
  margin-bottom: 0.25rem;
}
.admin-sidebar .nav-link:hover {
  background: var(--cb-gris);
  color: var(--cb-amarillo);
}
.admin-sidebar .nav-link.active {
  background: var(--cb-amarillo);
  color: var(--cb-negro);
}
.form-control, .form-select {
  background: var(--cb-gris);
  border: 1px solid var(--cb-gris-medio);
  color: var(--cb-blanco);
}
.form-control:focus, .form-select:focus {
  background: var(--cb-gris);
  border-color: var(--cb-amarillo);
  color: var(--cb-blanco);
  box-shadow: 0 0 0 0.2rem rgba(230, 184, 0, 0.25);
}
.form-control::placeholder { color: var(--cb-gris-claro); }
.table-dark {
  background: var(--cb-gris-oscuro);
  color: var(--cb-blanco);
}
.table-dark th {
  border-color: var(--cb-gris);
  color: var(--cb-amarillo);
}
.table-dark td { border-color: var(--cb-gris); }
.table-dark tbody tr:hover {
  background: var(--cb-gris);
}

.page-title {
  color: var(--cb-amarillo);
  border-bottom: 2px solid var(--cb-gris);
  padding-bottom: 0.5rem;
  margin-bottom: 1.5rem;
}
