/* =========================================================
   PANEL DE ADMINISTRACIÓN
   ========================================================= */
.admin-body { background: var(--crema); min-height: 100vh; }

.admin-login { display: grid; place-items: center; padding: 80px 16px; }
.admin-login__box { background: #fff; width: min(420px, 100%); padding: 32px; border-radius: var(--radio); box-shadow: var(--sombra); display: grid; gap: 14px; }
.admin-login__box h2 { color: var(--rojo); margin-bottom: 6px; }
.admin-login__box label { display: grid; gap: 4px; font-size: 13px; font-weight: 600; color: var(--gris); }

.admin-dashboard { padding: 40px 16px 80px; display: grid; gap: 36px; }

.admin-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.admin-stat { background: #fff; border-radius: var(--radio); padding: 20px; box-shadow: var(--sombra); text-align: center; }
.admin-stat span { display: block; font-size: 13px; color: var(--gris); margin-bottom: 6px; }
.admin-stat strong { font-family: "Cinzel", serif; font-size: 26px; color: var(--rojo); }

.admin-section h2 { color: var(--rojo); margin-bottom: 16px; font-size: 22px; }
.admin-table-wrap { background: #fff; border-radius: var(--radio); box-shadow: var(--sombra); overflow-x: auto; }
.admin-table { width: 100%; border-collapse: collapse; font-size: 14px; min-width: 640px; }
.admin-table th { text-align: left; background: var(--crema); color: var(--rojo); font-weight: 700; padding: 12px 16px; white-space: nowrap; }
.admin-table td { padding: 12px 16px; border-top: 1px solid #f1e8e3; vertical-align: middle; }
.admin-table tbody tr:hover { background: #fbf6f1; }
.admin-table select { padding: 6px 10px; border-radius: 8px; border: 1px solid #ddd; font-size: 13px; }

@media (max-width: 860px) {
  .admin-stats { grid-template-columns: repeat(2, 1fr); }
}
